Tester regex
Wyrażenia regularne dopasowują wzorce w tekście do walidacji, search-replace i parsowania logów. Testuj wzorce z live highlighting przed wrzuceniem do kodu produkcyjnego — unikaj niespodzianek catastrophic backtracking na input użytkownika.
Jak testować regex
1. Wpisz wzorzec regex (bez zewnętrznych slashy lub z flagami).
2. Ustaw flagi: g global, i case insensitive, m multiline.
3. Wklej przykładowy tekst w obszar test string.
4. Przejrzyj dopasowania, grupy capture i podgląd replace, jeśli dostępny.
Przykłady regex
Walidacja „email-ish”
^[\w.-]+@[\w.-]+\.\w+$ łapie proste e-maile — nie RFC-perfect, ale użyteczne w formularzach.
Wyodrębnij daty ISO
\d{4}-\d{2}-\d{2} znajduje 2024-03-15 w liniach logów do grep replace.
Helper slugify
Zamień [^a-z0-9]+ na myślnik dla slug URL z tytułu.
Kiedy regex pomaga
• Gdy walidujesz ustrukturyzowane stringi (telefon, kod pocztowy).
• Gdy parsujesz półustrukturyzowane logi.
• Gdy uczysz capture groups i lookahead.
Świadomość ReDoS
Zagnieżdżone kwantyfikatory jak (a+)+ na złośliwym stringu zawieszają CPU — unikaj user regex na serwerze lub używaj bezpiecznych silników z timeout.
Najczęstsze pytania
Jaki flavor regex?
JavaScript RegExp — różnice PCRE istnieją (lookbehind zależy od wersji silnika).
Flaga global g?
Znajduje wszystkie dopasowania, nie tylko pierwsze — testStateful z lastIndex w JS.
Escapować znaki specjalne?
. * + ? [ ] ( ) { } | \ ^ $ wymagają escape dla literal match.
Grupy capture?
Nawiasy ( ) tworzą numerowane grupy dostępne w replace $1 $2.
Lokalnie?
Tak.