Tester regexów: testuj wyrażenia regularne online
Tester regexów pozwala testować wyrażenia regularne online za pomocą silnika JavaScript Twojej przeglądarki. Dopasowania są oznaczane i wyświetlane na liście wraz z pozycją i grupami przechwytującymi. Na przykład \b([\w.-]+)@([\w-]+\.[a-zA-Z]{2,})\b znajduje w tekście z danymi kontaktowymi 2 adresów e-mail wraz z nazwą i domeną. Wzorzec i tekst nie opuszczają Twojej przeglądarki.
Autor: Jakub Martyniak
Wdrażasz ten wzorzec? Uruchom swoją aplikację na VPS z pełnym dostępem root.
Dane wejściowe
Wynik
Wpisz wzorzec po lewej, aby zobaczyć wyniki.
Przykładowy wynik
Tak wygląda wynik w Regex Tester
Wpisujesz wzorzec i tekst, a narzędzie wyświetla każde dopasowanie wraz z pozycją i grupami przechwytywania. W trybie zastępowania pokazuje tekst po zamianie. Poniższy przykład używa fikcyjnych adresów. Dopasowania zależą od Twojego wzorca i tekstu.
Przykład · Flaga g (wszystkie dopasowania)
Wyniki: 2Dane wejściowe
- Wzorzec
- \b([\w.-]+)@([\w-]+\.[a-zA-Z]{2,})\b
- Grupa 1 przechwytuje część przed @, a grupa 2 — domenę.
- Tekst testowy
- info@example.com, support@example.org, no-at.example.net
Wynik
- Trafienia: 1
- info@example.com
- Indeks 0 · Grupa 1: info · Grupa 2: example.com
- Trafienia: 2
- support@example.org
- Indeks 18 · Grupa 1: support · Grupa 2: example.org
- Zamień na $1 [at] $2
- info [at] example.com, support [at] example.org, no-at.example.net
- Adres bez @ nie jest rozpoznawany i pozostaje bez zmian.
Dlaczego to narzędzie?
Więcej niż test dopasowania
Przegląd najważniejszych funkcji testera regexów.
Oznaczanie i zliczanie dopasowań
Po krótkiej przerwie w pisaniu narzędzie zlicza wszystkie dopasowania i oznacza je w wyniku. Jeśli dopasowań jest bardzo dużo, oznacza pierwsze 1000.
Monitorowanie grup przechwytywania
Każde dopasowanie widnieje na liście wraz z indeksem, a pod nim osobno jego numerowane i nazwane grupy przechwytujące.
Flagi g, i, m, s i u
Przełączaj pięć flag za pomocą pól wyboru. Mają takie samo znaczenie jak w kodzie JavaScript. Flaga g jest domyślnie włączona.
Tryb zastępowania
Zastępuje dopasowania za pomocą String.prototype.replace(), używając $1, $2 dla grup przechwytujących. Wynik skopiujesz jednym kliknięciem.
Ochrona przed katastrofalnym nawracaniem
Przetwarzanie odbywa się w Web Workerze i jest przerywane po 1 sekundzie, aby wzorzec taki jak (a+)+ nie zawiesił karty.
Działa tylko w przeglądarce
Wzorzec i tekst testowy są przetwarzane wyłącznie po stronie klienta — nic nie jest wysyłane na serwer.
Instrukcja
Jak testować wyrażenia regularne online
Od wzorca do skopiowanego wyniku: tak korzystasz z testera regexów.
Krok 1
Wybierz tryb
Wybierz u góry tryb „Znajdź dopasowania”, aby sprawdzać dopasowania, albo „Zastępowanie”, aby zastępować tekst.
Krok 2
Wpisz wzorzec
Wpisz wyrażenie regularne bez ukośników w polu „Wzorzec” albo kliknij „Wczytaj przykład”, aby załadować wzorzec adresu e-mail z przykładowym tekstem.
Krok 3
Ustawianie flag
Przełączaj flagi g, i, m, s lub u za pomocą pól wyboru. Flaga g jest domyślnie włączona, a aktywne flagi są widoczne za wzorcem, np. /g.
Krok 4
Wstaw tekst testowy
Wklej tekst w pole „Tekst testowy”. Po krótkiej przerwie w pisaniu dopasowania zostaną oznaczone w wyniku i zliczone u góry.
Krok 5
Sprawdź i skopiuj dopasowania
Lista pokazuje każde dopasowanie wraz z indeksem i grupami przechwytującymi. Przyciskiem kopiowania skopiujesz wszystkie dopasowania, każde w osobnej linii.
Krok 6
Zastępowanie i kopiowanie wyniku
W trybie „Zastępowanie” wpisz w polu „Zastąp przez” nowy tekst, używając $1, $2 dla grup przechwytujących, a następnie skopiuj wynik przyciskiem kopiowania.
Ściągawka
Ściągawka z regexów: najważniejsze elementy
Wyrażenie regularne (regex) to wzorzec wyszukiwania w tekście. Pozwala znajdować, sprawdzać, wyodrębniać i zastępować ciągi znaków, takie jak adresy e-mail, daty czy wpisy w logach. Te elementy składni JavaScript możesz wypróbować powyżej w testerze regexów.
| Token | Znaczenie |
|---|---|
| . | Dowolny znak oprócz znaku nowej linii; z flagą s również znaki nowej linii |
| \d | Cyfra od 0 do 9 |
| \w | Znak słowa: tylko A–Z, a–z, 0–9 i _, bez liter takich jak ä, é czy ñ |
| \s | Biały znak, np. spacja, tabulator lub znak nowej linii |
| \p{L} | Dowolna litera, także z diakrytykiem lub akcentem, tylko z flagą u |
| \b | Granica słowa, np. \bRegex\b dla dokładnie tego słowa |
| ^ $ | Początek i koniec tekstu; z flagą m — każdej linii |
| [abc] | Jeden ze znaków: a, b lub c |
| [^abc] | Dowolny znak oprócz a, b i c |
| a|b | a lub b |
| * + ? | Zero lub więcej, co najmniej jedno albo zero lub jedno wystąpienie |
| {2,5} | Od dwóch do pięciu powtórzeń |
| .*? | Dopisanie ? sprawia, że kwantyfikator jest leniwy (lazy): dopasowuje jak najmniej znaków |
| ( … ) | Grupa przechwytująca, w testerze regexów wyświetlana jako grupa 1, 2 itd. |
| (?<name> … ) | Nazwana grupa przechwytująca, w testerze regexów wyświetlana również pod swoją nazwą |
| (?: … ) | Grupa nieprzechwytująca, np. do alternatyw lub kwantyfikatorów |
| (?= … ) (?! … ) | Sprawdzenie z wyprzedzeniem: tylko jeśli dalej występuje … lub nie występuje |
| \. | Ukośnik odwrotny przed znakiem specjalnym sprawia, że jest on traktowany dosłownie, np. \. oznacza kropkę |
Odkryj więcej
Więcej narzędzi
Porównywanie tekstów online (Diff Checker)
Porównywanie tekstów online: Porównaj dwa teksty, konfiguracje lub wersje kodu, zobacz różnice w poszczególnych wierszach i słowach oraz skopiuj wynik jako Unified Diff. Wszystko działa w przeglądarce.
Autor: Dimitri Heissler
Formatowanie JSON
Formatuj, minimalizuj i sprawdzaj poprawność JSON – z podświetlaniem składni, komunikatami o błędach i możliwością pobrania, w całości w przeglądarce.
Autor: Jakub Martyniak
Walidator YAML
Sprawdzaj składnię YAML i formatuj go w ujednolicony sposób lub konwertuj bezpośrednio na JSON. Obsługuje wiele dokumentów oddzielonych `---` (np. manifesty Kubernetes) i podaje dokładny numer wiersza i kolumny błędu. Działa w całości w przeglądarce.
Autor: Jakub Martyniak
Generator Crontab
Twórz wyrażenia Cron za pomocą formularza, z objaśnieniami po polsku i podglądem najbliższych terminów wykonania — wszystko w przeglądarce.
Autor: Jakub Martyniak
Koder i dekoder URL
Kodowanie i dekodowanie adresów URL oraz tekstu online: porównanie encodeURIComponent, encodeURI i formatu formularza, tabela parametrów zapytania oraz kreator linków UTM. Działa w całości w przeglądarce.
Autor: Dimitri Heissler
Generator .htaccess i generator htpasswd
Tworzenie plików Apache .htaccess i .htpasswd online: przekierowania 301, HTTPS, ochrona hasłem z bcrypt, reguły WordPress, strony błędów, buforowanie, GZIP i ochrona przed hotlinkowaniem. Działa w całości w przeglądarce.
Autor: Dimitri Heissler
FAQ
Często zadawane pytania dotyczące testera regexów
Krótkie odpowiedzi o wyrażeniach regularnych i tym narzędziu.
Lista wszystkich dopasowań z pozycją i grupami przechwytującymi. Wzorzec \b([\w.-]+)@([\w-]+\.[a-zA-Z]{2,})\b znajduje w tekście „info@example.com, support@example.org, no-at.example.net” 2 dopasowania: info@example.com od indeksu 0 i support@example.org od indeksu 18, każde z nazwą i domeną w grupach 1 i 2. W trybie zamiany po użyciu $1 [at] $2 wynikiem jest „info [at] example.com, support [at] example.org, no-at.example.net”.
Tak. Tester regexów jest darmowy i nie wymaga konta: otwórz stronę, wpisz wzorzec i tekst testowy, a następnie sprawdź dopasowania.
Nie. Przetwarzanie odbywa się w Twojej przeglądarce, w Web Workerze korzystającym z jej silnika RegExp. Nic nie jest przesyłane ani zapisywane w logach. To ważne, bo teksty testowe często zawierają prawdziwe wpisy w logach lub adresy e-mail.
Natywny silnik JavaScript (ECMAScript) Twojej przeglądarki, czyli ta sama składnia regexów co w JavaScript, TypeScript i Node.js. PCRE (PHP, Perl) oraz moduł re w Pythonie różnią się szczegółami: w JavaScript nie ma \K, a grupy nazwane zapisuje się jako (?<name>…), a nie (?P<name>…).
Flaga g (global) zwraca wszystkie dopasowania i jest domyślnie włączona. Bez g narzędzie działa jak RegExp.exec() i zwraca najwyżej jedno dopasowanie. Flaga i ignoruje wielkość liter, m pozwala używać ^ i $ na początku i końcu każdej linii, s pozwala kropce dopasowywać również znaki nowej linii, a u włącza tryb Unicode, potrzebny np. do \p{L}.
Przejdź do trybu „Zastępowanie” i wpisz nowy tekst w polu „Zastąp przez”. Za pomocą $1, $2 itd. wstawisz grupy przechwytujące, a za pomocą $<name> — grupy nazwane. Narzędzie korzysta z String.prototype.replace(): bez flagi g zastępowane jest tylko pierwsze dopasowanie. Wynik skopiujesz przyciskiem kopiowania.
Tak. Pod każdym dopasowaniem widnieją jego grupy przechwytujące: numerowane jako 1, 2 itd., a nazwane, np. (?<jahr>\d{4}), dodatkowo pod swoją nazwą. Jeśli grupa niczego nie przechwyciła, pojawia się „(brak dopasowania)”.
Jeśli wzorzec jest nieprawidłowy, np. zawiera niezamknięty nawias, narzędzie wyświetla komunikat błędu z silnika przeglądarki. Jeśli przetwarzanie trwa dłużej niż 1 sekundę, zostaje przerwane. Zwykle oznacza to, że wzorzec jest podatny na katastrofalne nawracanie, np. przez zagnieżdżone kwantyfikatory takie jak (a+)+. Uprość wzorzec lub skróć tekst testowy.
Liczba dopasowań jest zawsze dokładna. Oznaczanych jest najwyżej pierwszych 1000 dopasowań, a na liście pojawia się pierwszych 200 — każde z indeksem i grupami przechwytującymi. Jeśli dopasowań jest więcej niż 200, nad oznaczonym tekstem pojawia się informacja.
Masz dodatkowe pytania?
Kontakt z pomocą technicznąTwoja aplikacja potrzebuje niezawodnego serwera
VPS na ZAP-Hosting zapewnia niezawodne działanie twojej aplikacji lub twojego projektu online.
Bez konfiguracji. Bez ryzyka. Online w kilka sekund.
Szukasz więcej narzędzi? Zobacz wszystkie narzędzia dla programistów
