Tester regex do szybkich dopasowań i zamian
W kalkulatorze testerze regex wpisujesz tekst i wzorzec, a narzędzie pokazuje podświetlone dopasowania, grupy przechwytywania oraz podgląd replace.
To przydatne, gdy chcesz szybko sprawdzić, czy Twój pattern działa w praktyce (na wielu liniach i z różnymi znakami).
Wzór i logika obliczeń
Silnik przechodzi po tekście i wyszukuje kolejne dopasowania zgodnie z flagami (np. g dla wszystkich matchy).
Dla każdego dopasowania narzędzie wyciąga grupy przechwytywania oraz (jeśli wzorzec je ma) grupy nazwane.
Gdy pracujesz na danych w kolumnach lub listach, często łączysz regex z porządkowaniem – wtedy przydaje się CSV na listę i lista na CSV – separator, TAB, duplikaty albo Usuwanie duplikatów online – Wyczyść listę z powtórzeń.
Przykład obliczeń
Załóżmy, że w tekście są e-maile, a wzorzec rozdziela nazwę użytkownika i domenę na dwie grupy. Tester policzy liczbę dopasowań,
pokaże wartości grup oraz indeks start/koniec. Jeśli dodatkowo chcesz maskować domenę, ustaw replace np. $1@[ukryte] i zobacz wynik.
Tak samo możesz testować wzorce do formatów (np. kolorów) – przy okazji zerknij na Kalkulator kolorów HEX na RGB i Kalkulator bin->hex.
Zadanie przykładowe i rozwiązanie
Zadanie: Masz listę numerów telefonów w różnych formatach i chcesz je ujednolicić (np. usunąć spacje i myślniki).
Rozwiązanie: Wklej tekst, wpisz wzorzec wyłapujący cyfry i separatory, a w replace wstaw tylko przechwycone cyfry (np. używając grup).
W trybie „Podświetlenie + lista” sprawdzisz, czy regex nie łapie zbyt wiele, a w sekcji replace zobaczysz gotowy wynik po zamianie.
Wskazówka: Gdy wzorzec dopasowuje pusty fragment (zero-length), dodaj warunek w regex albo ogranicz wzorzec, żeby uniknąć „zapętlenia” dopasowań.
Tabela: flagi i praktyczne znaczenie
| Flaga |
Co zmienia |
Kiedy używać |
Pułapka |
| g |
Wyszukuje wszystkie dopasowania |
Gdy chcesz listę matchy albo replace all |
Bez g zobaczysz tylko 1 dopasowanie |
| i |
Ignoruje wielkość liter |
Gdy dane mają różne formaty |
Może „zbyt łatwo” dopasować |
| m |
^ i $ działają per linia |
Logi, pliki tekstowe, wiele linii |
Nie myl z flagą s |
| s |
Kropka dopasowuje newline |
Bloki tekstu, HTML, JSON (ostrożnie) |
Łatwo złapać „za dużo” |
| u |
Tryb Unicode |
Teksty PL, emoji, znaki spoza ASCII |
Bez u niektóre wzorce działają inaczej |
Ciekawostka
Ciekawostka
Ten sam regex może dawać inne wyniki w zależności od silnika (JavaScript, PCRE, Python). Jeśli testujesz pattern pod konkretny system,
sprawdzaj też, czy wspiera on np. lookbehind lub nazwane grupy. W praktyce warto trzymać się prostych wzorców i dopiero potem je rozwijać.
Najczęstsze błędy i jak zwiększyć dokładność wyniku
- Brak flagi g: widzisz tylko pierwszy match i myślisz, że regex „nie działa”.
- Za szeroka kropka (.) bez ograniczeń: łapiesz za dużo tekstu – doprecyzuj zakres lub użyj lazy
?.
- Nieprzemyślane grupy: potem replace nie składa wyniku – sprawdź listę grup i indeksy.
- Ucieczka znaków: kropka i nawiasy mają znaczenie – pamiętaj o
\., \(, \).
- Zerowe dopasowania: wzorzec dopasowuje pusty tekst i iteracja robi się problematyczna – zawęź pattern.
Regex w praktyce – czyszczenie i transformacje
Regex świetnie sprawdza się do „sprzątania” danych (np. wycinania prefiksów, normalizacji spacji, maskowania fragmentów).
Gdy robisz serię operacji na listach, najpierw oczyść dane w Usuwanie duplikatów online – Wyczyść listę z powtórzeń, potem regexem wyciągnij to, co potrzebne, a na końcu np. przelicz wartości w Plan oszczędzania z waloryzacją – kalkulator lub Kalkulator VAT (brutto/netto).
Box 1: walidacja vs wyszukiwanie
Do walidacji lepiej używać prostych reguł i dodatkowej logiki. Regex traktuj jako filtr, a nie „jedyny” strażnik poprawności.
Box 2: zamiany kontrolowane
Zanim zrobisz replace all, sprawdź listę matchy i grup. Jedna zła kropka potrafi zmienić zbyt dużo.
FAQ – Tester regex i replace (podświetlanie matchy)
Wklej tekst, wpisz wzorzec regex i ustaw flagi. Tester pokaże dopasowania, grupy oraz podgląd replace.
To fragmenty przechwycone przez nawiasy. W replace używasz ich jako $1, $2 itd. Grupom nazwanym odpowiadają nazwy.
Zwykle brakuje flagi g. Bez niej jest tylko pierwszy match.
Replace obsługuje $1..$9 (grupy), $& (cały match), $` (przed), $" (po) i $$ (znak $).
Chroni przed zbyt dużą liczbą wyników. Możesz go zwiększyć w ustawieniach.
Regex może dopasować „pustkę” (zero-length). W globalnym trybie może to dać wiele dopasowań – warto zawęzić wzorzec.
Domyślnie tak, bo podgląd escapuje HTML. Opcjonalnie możesz to wyłączyć.