Tester Regex
Testuj regex w czasie rzeczywistym z podświetlaniem dopasowań i grupami przechwytywania. Darmowy debugger regex online, działa w przeglądarce.
Quick regex reference
| Pattern | Description |
|---|---|
. | Any character (except newline) |
^ | Start of string / line |
$ | End of string / line |
* | 0 or more repetitions |
+ | 1 or more repetitions |
? | 0 or 1 (optional) |
{n} | Exactly n repetitions |
{n,m} | Between n and m repetitions |
\d | Digit [0-9] |
\D | Non-digit |
\w | Word character [a-zA-Z0-9_] |
\W | Non-word character |
\s | Whitespace |
\S | Non-whitespace |
\b | Word boundary |
[abc] | Class: a, b, or c |
[^abc] | Negation: not a, b, or c |
(abc) | Capturing group |
(?:abc) | Non-capturing group |
(?<n>abc) | Named group "n" |
a|b | Alternative: a or b |
Dokumentacja
Czym jest wyrażenie regularne?
Wyrażenie regularne (regex) to ciąg znaków definiujący wzorzec wyszukiwania. Regex jest stosowany praktycznie w każdym języku programowania i narzędziu — od walidacji formularzy w JavaScript, przez parsowanie logów w Pythonie, po wyszukiwanie i zamianę w edytorach tekstu. Wzorzec łączy znaki literalne, metaznaki (. ^ $ * + ? { } [ ] | ( )) i klasy znaków (\d cyfra, \w znak słowa, \s biały znak). To narzędzie korzysta z silnika regex ECMAScript (tego samego, który jest używany w JavaScript, TypeScript i Node.js).
Wyjaśnienie flag regex
g — globalny: znajduje wszystkie dopasowania, nie tylko pierwsze. Niezbędne do zliczania wystąpień lub zamiany każdej instancji.
i — ignoruj wielkość liter: dopasowuje wielkie i małe litery wymiennie. /hello/i dopasowuje „Hello", „HELLO" i „hello".
m — wieloliniowy: ^ i $ dopasowują początek i koniec każdej linii, nie tylko całego ciągu. Kluczowe przy parsowaniu logów linia po linii.
s — dotAll: metaznak . dopasowuje również znaki nowej linii. Bez tej flagi . zatrzymuje się na łamaniach linii.
Grupy przechwytywania
Grupy przechwytywania (wzorzec) przechwytują dopasowany podciąg do ekstrakcji lub odwołania wstecznego. Grupy nazwane (?<nazwa>wzorzec) przypisują czytelną nazwę do przechwytywania, dostępną przez match.groups.nazwa — znacznie jaśniejsze niż grupy numerowane w złożonych wzorcach. Grupy nieprzechwytujące (?:wzorzec) grupują bez przechwytywania — przydatne do stosowania kwantyfikatorów do sekwencji bez tworzenia zbędnego przechwycenia. Odwołania wsteczne takie jak $1, $2 w ciągach zamiany odnoszą się do przechwyconego tekstu po numerze grupy.
Prywatność
Wszystkie obliczenia wykonywane są w 100% w Twojej przeglądarce. Żadne dane nie są wysyłane na serwer.