Sprytne Okazje — promocje, kody rabatowe i wyprzedaże

Tester wyrażeń regularnych — testuj i debuguj regex online

Testuj wyrażenia regularne online na żywo. Sprawdzaj dopasowania, grupy i flagi w czasie rzeczywistym — darmowy regex tester w przeglądarce.

Bezpieczne (SSL)
Przetwarzanie Lokalne
100% Darmowe
Instrukcja
  • 1
    Wprowadź dane
    Wpisz treść, wklej tekst lub załaduj plik z dysku.
  • 2
    Kliknij przycisk
    Narzędzie natychmiast przetworzy Twoje dane w przeglądarce.
  • 3
    Pobierz wynik
    Skopiuj gotowy tekst lub zapisz plik na urządzeniu.
function runTool() {
  return "Wynik gotowy w 0.1s";
}

Tryb

Match — szukanie

Match szuka dopasowań, Replace podmienia je na tekst z pola Replacement

Dopasowania

3
OK

ile razy wzorzec trafił w tekst (liczy silnik w trybie Match)

Zamiany

—
OK

ile fragmentów podmieniono (tryb Replace, licznik z preg_replace)

Grupy przechwytujące

1

PCRE raportuje grupy dopiero przy znalezionych dopasowaniach; lookaround nie tworzy grup: (?=…) i (?!…) to lookahead, (?<=…) i (?<!…) to lookbehind — wszystkie obsługiwane, domyślny przykład narzędzia używa lookbehind (?<=\bID:)

Flagi

i

doklejane do wzorca bez zmian („~wzorzec~flagi”) — działa każda flaga PCRE, najczęstsze i / m / s / u / x

Globalny

Tak

bez Global Match wypisuje tylko pierwsze dopasowanie, a Replace podmienia tylko pierwsze wystąpienie

Mode: MATCH
Pattern: (?<=\bID:)(\d{4,8})|\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}\b
Flags: i
Global: Yes
Matches found: 3

1) '482913' at offset 18
2) '[email protected]' at offset 35
3) '[email protected]' at offset 93
Flagi są doklejane do wzorca bez zmian (z kodu: „~wzorzec~flagi” do preg_match_all / preg_replace), więc zadziała każda flaga PCRE w PHP — w tabeli najczęstsze: i, m, s, u, x
FlagaDziałanie (1:1 z PCRE)PrzykładWynik z silnika
i Ignoruje wielkość liter (PCRE_CASELESS) wzorzec „kot”, flagi „i”, tekst „Kot i KOT” 2 trafienia: „Kot” (poz. 0), „KOT” (poz. 6)
m Tryb wielowierszowy: ^ i $ działają przy każdej linii (PCRE_MULTILINE) wzorzec „^Ala$”, flagi „m”, tekst „Ala ⏎ ma kota” 1 trafienie: „Ala” (poz. 0)
s Kropka obejmuje też znak nowej linii (PCRE_DOTALL) wzorzec „a.b”, flagi „s”, tekst „a ⏎ b” 1 trafienie
u Tryb UTF-8 — bez niego „iu” nie złapie polskich liter (ż ≠ Ż bajt po bajcie) wzorzec „ŻÓŁĆ”, flagi „iu”, tekst „żółć” 1 trafienie: „żółć” (poz. 0)
x Białe znaki we wzorcu ignorowane (PCRE_EXTENDED) wzorzec „a b c”, flagi „x”, tekst „abc” 1 trafienie: „abc” (poz. 0)
⏎ = znak nowej linii; pozycja (poz.) to offset bajtowy od początku tekstu, tak jak wypisuje go silnik
WzorzecFlagiPoddany tekstWynik
\d+ brak abc123def456 2 trafienia: „123” (poz. 3), „456” (poz. 9)
[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,} i Napisz: [email protected] albo [email protected] 2 trafienia: „[email protected]” (poz. 8), „[email protected]” (poz. 30)
(?<=ID:)\d+ brak Zamówienie ID:482913 gotowe 1 trafienie: „482913” (poz. 15)

Warto wiedzieć — wyrażenia regularne w praktyce

Flagi trafiają prosto do PCRE

Tester skleja „~wzorzec~flagi” (delimiter ~ z kodu) i woła preg_match_all albo preg_replace — nie trzeba okalać wzorca ukośnikami. i ignoruje wielkość liter, m włącza tryb wielowierszowy, s uczy kropkę nowej linii, u włącza UTF-8, x ignoruje białe znaki we wzorcu.

Co zmienia Global

W trybie Match bez Global wypisywane jest tylko pierwsze dopasowanie (limit min($count, 1) z kodu — silnik dopisuje wtedy wskazówkę „Tip: Enable Global”). W Replace bez Global podmieniane jest tylko pierwsze wystąpienie (limit 1 w preg_replace). Z Global — wszystko.

Catastrophic backtracking

Tester nie ma własnego limitu czasu ani licznika wywołań — ochroną są wbudowane limity PCRE (pcre.backtrack_limit, pcre.recursion_limit). Po przekroczeniu zamiast wyniku zobaczysz „Backtrack limit exhausted.” (mapa błędów formatPregError z kodu). Uważaj na wzorce typu (a+)+$ na długich tekstach.

Grupy i lookaround

Lista wyników pokazuje tylko pełne dopasowania ($matches[0] w kodzie) z offsetami. Zawartość grup przechwytujących obejrzysz przez odnośniki \1, \2 w polu Replacement (tryb Replace). Lookahead (?=…) / (?!…) i lookbehind (?<=…) / (?

Oceń to narzędzie:

Powiązane narzędzia

Inne narzędzia, które mogą Ci się przydać

Tester wyrażeń regularnych – sprawdzanie i debugowanie wzorców regex online

Wyrażenia regularne (regex, regular expressions) to jedna z najbardziej przydatnych, a jednocześnie najbardziej skomplikowanych technologii używanych w nowoczesnym programowaniu, administrowaniu bazami danych i automatyzacji zadań. Regex pozwala na definiowanie złożonych wzorców wyszukiwania tekstu, dzięki czemu możemy z łatwością walidować poprawność wprowadzanych danych (np. format adresu e-mail, kodu pocztowego, hasła), wyszukiwać określone słowa kluczowe w dużych logach systemowych lub dokonywać masowej zamiany fragmentów tekstu. Ze względu na trudną i mało intuicyjną składnię, pisanie wyrażeń regularnych często kończy się błędami. Nasz darmowy **tester wyrażeń regularnych online** (regex tester) to interaktywne narzędzie deweloperskie, które pozwala na wpisanie wzorca regex i testowanie go na dowolnym tekście w czasie rzeczywistym. Wszystkie dopasowania, grupy przechwytujące oraz błędy składniowe są natychmiast wizualizowane.

Dzięki temu szybko przetestujesz swoje wyrażenia przed wdrożeniem ich do kodu produkcyjnego w PHP, JavaScript, Pythonie czy języku C#.

Najważniejsze elementy składni regex i popularne tokeny

Aby ułatwić budowanie poprawnych wyrażeń regularnych, poniższa tabela przedstawia zestawienie najczęściej używanych tokenów składniowych, które możesz natychmiast przetestować w naszym edytorze:

Kategoria Znak / Token Opis i zachowanie dopasowania Przykładowy regex Dopasowanie (przykład)
Klasy znaków \d Dowolna cyfra (odpowiednik [0-9]). \d{3} 123, 789
Klasy znaków \w Znak alfanumeryczny (litery, cyfry i znak podkreślenia _). \w+ user_1, admin
Kwantyfikatory + Jedno lub więcej wystąpień poprzedzającego elementu. a+ a, aaa
Kwantyfikatory * Zero lub więcej wystąpień poprzedzającego elementu. a* (pusty ciąg), aa
Kotwice ^ oraz $ ^ oznacza początek tekstu (lub linii), $ oznacza koniec tekstu (lub linii). ^Start Dopasuje „Start” tylko na początku wiersza.
Grupy (...) Grupa przechwytująca (capturing group) – grupuje znaki i zapamiętuje dopasowanie. (pdf|docx) pdf lub docx

Jak działają flagi (modyfikatory) wyrażeń regularnych?

Flagi to specjalne parametry umieszczane na końcu wyrażenia regularnego (po ukośniku zamykającym, np. /wzorzec/gim), które radykalnie zmieniają zachowanie silnika dopasowującego. Nasz tester obsługuje najpopularniejsze flagi:

  • Flaga g (global): Zamiast zatrzymywać wyszukiwanie po znalezieniu pierwszego dopasowania, silnik szuka wszystkich dopasowań w całym tekście wejściowym.
  • Flaga i (case-insensitive): Ignoruje wielkość liter. Wyrażenie /pies/i dopasuje słowa „pies”, „Pies”, jak również „PIES”.
  • Flaga m (multi-line): Zmienia działanie kotwic ^ i $. Wyszukują one początek i koniec każdego wiersza z osobna, a nie tylko początku i końca całego tekstu wejściowego.
  • Flaga s (dot-all): Sprawia, że kropka (.), która standardowo dopasowuje każdy znak z wyjątkiem nowej linii, zaczyna dopasowywać również znaki nowej linii (\n).
  • Flaga u (unicode): Włącza pełne wsparcie dla znaków zakodowanych w UTF-8 (np. polskich znaków narodowych, emoji).

Jak korzystać z testera wyrażeń regularnych? Instrukcja obsługi

Sprawdzenie Twojego wyrażenia zajmie tylko chwilę:

  1. Wpisz wyrażenie regularne: Wpisz swój wzorzec w górne pole tekstowe. Nie musisz dodawać ukośników startowych (delimiterów) – system obsłuży to automatycznie.
  2. Zaznacz flagi: Wybierz odpowiednie modyfikatory (np. i, g, m) klikając ikony flag obok pola wprowadzania.
  3. Wklej tekst testowy: Wprowadź dowolny tekst, w którym chcesz wyszukać dopasowania.
  4. Analizuj wyniki: System natychmiast podświetli wszystkie pasujące fragmenty tekstu. Poniżej wyświetli się panel ze szczegółową listą dopasowań oraz wartościami przypisanymi do poszczególnych grup przechwytujących (capturing groups). Jeśli popełnisz błąd składniowy, system wyświetli komunikat o błędzie silnika PCRE.

Często zadawane pytania (FAQ)

Jak sprawdzić czy wyrażenie regularne jest poprawne za pomocą testera?

Wklej swój wzorzec w pole "Regex", a w pole tekstowe wprowadź przykładowe dane (np. poprawny adres e-mail i błędny adres e-mail). Jeśli tester prawidłowo podświetli tylko poprawny e-mail, a pod polem regex nie pojawi się czerwony komunikat o błędzie składniowym, Twoje wyrażenie jest poprawne i działa zgodnie z założeniami.

Co oznaczają poszczególne flagi (modyfikatory) wyrażeń regularnych?

Flagi modyfikują sposób wyszukiwania: g (global) szuka wszystkich dopasowań, a nie tylko pierwszego; i (case-insensitive) ignoruje różnice między wielkimi i małymi literami; m (multiline) sprawia, że kotwice działają dla każdej linii; s pozwala kropce dopasowywać znaki przejścia do nowej linii; a u umożliwia poprawną pracę ze standardem Unicode.

Jak za pomocą regex wyszukać i wyodrębnić grupy (capturing groups)?

Aby utworzyć grupę przechwytującą, otocz fragment wyrażenia nawiasami okrągłymi (...), na przykład: (\d{2})-(\d{3}) dla kodu pocztowego. Nasz tester podświetli cały dopasowany kod, a w panelu bocznym wyświetli zawartość poszczególnych grup: Grupa 1 (dwie cyfry) oraz Grupa 2 (trzy cyfry), co ułatwia późniejsze wyciąganie danych w kodzie programistycznym.

Czym jest błąd ReDoS (Regular Expression Denial of Service) i jak go unikać?

Błąd ReDoS (atak polegający na odmowie usługi za pomocą wyrażenia regularnego) występuje, gdy napiszesz wzorzec o charakterze "złym wykładniczo" (zawierający nakładające się kwantyfikatory, np. (a+)+). Silnik regex przy braku dopasowania zaczyna sprawdzać miliony kombinacji (tzw. katastrofalny backtracking), co blokuje procesor na 100%. Unikaj zagnieżdżania kwantyfikatorów *, + wewnątrz innych grup z kwantyfikatorami.

Jaka jest różnica między zachłannym (greedy) a leniwym (lazy) dopasowaniem?

Silnik regex jest domyślnie zachłanny (greedy) – stara się dopasować jak najdłuższy możliwy ciąg znaków. Na przykład dla tekstu <b>jeden</b> dwa <b>trzy</b> wyrażenie <b>.*</b> dopasuje cały ciąg od pierwszego do ostatniego tagu. Dodanie znaku zapytania .*? zmienia dopasowanie na leniwe (lazy), dzięki czemu silnik zatrzyma się na pierwszym napotkanym tagu zamykającym, dopasowując poprawnie dwa osobne tagi.

Zainstaluj Webp.pl Miej narzędzia we własnej kieszeni!