Przejdź do treści

Analizator wyrażeń regularnych

Rozłóż wyrażenie regularne na proste kroki, jeden po drugim.

Wejście
Wynik

Analizator wyrażeń regularnych

Wklej wyrażenie regularne i to narzędzie rozłoży je na części, zamieniając kryptyczną syntaksę taką jak ^[\w.+-]+@[\w-]+\.[a-zA-Z]{2,}$ na jasny przewodnik w naturalnym języku, wyjaśniający, co każda część faktycznie dopasowuje. Akceptuje nagi wzorzec lub pełny literał /pattern/flags, abyś mógł wkleić dokładnie to, co skopiowałeś z edytora kodu, biblioteki walidacji lub starej odpowiedzi na Stack Overflow.

Włącz Wyjaśnij flagi, aby uzyskać linię po linii wyjaśnienie g, i, m, s, u i reszty; Wyświetl grupy i nazwane grupy, aby zobaczyć każde (…) na pierwszy rzut oka, przydatne gdy wzorzec zawiera więcej z nich niż możesz liczyć; Ostrzegaj przed ryzykiem katastrofalnego powrotu, aby oznaczyć zagnieżdżone, nieograniczone powtórzenia — klasyczny kształt (a+)+, który może zamarznąć aparat regex na złym wejściu; Zaproponuj prostszą notację dla łatwych przepisów takich jak [0-9] na \d; i Wygeneruj przykładowe dopasowanie, aby wytworzyć krótki ciąg, który wzorzec faktycznie akceptuje, przydatny jako szybka kontrola zdrowotności. Wybierz Drzewo lub Ponumerowane kroki jako sposób rozłożenia, oraz JavaScript, PCRE lub Python jako dialekt dla notatek na temat składni grup nazwanych i possessive quantifiers.

Parser jest napisany od zera, a nie pożyczony z jednego aparatu, więc jego wyjaśnienia pozostają spójne w dialektach i poprawnie obsługuje znaki ujęte w cudzysłów, punkty kodowe Unicode i emoji w tekście literalnym — nic nie zostanie podzielone na złe części.

Wszystko działa lokalnie w przeglądarce. Wzorzec zbudowany wokół formatu klucza API lub walidatora danych osobowych nigdy nie opuszcza Twojej maszyny. Skopiuj wyjaśnienie, pobierz je jako plik .txt, lub wyślij wyjście z powrotem do wejścia, aby zbadać powiązany wzorzec dalej.

Częste pytania

Który dialekt regex powinienem wybrać?
JavaScript obejmuje to, co faktycznie działa w przeglądarce; przełącz się na PCRE lub Python tylko wtedy, gdy chcesz ich notatek specyficznych dla dialektu na nazwane grupy i possessive quantifiers — sam rozbór czyta ten sam wzorzec w taki sam sposób we wszystkich trzech.
Może to uchwycić każdy wzorzec katastrofalnego powrotu?
Nie. Oznacza najczęstszą przyczynę — zagnieżdżone nieograniczone powtórzenia takie jak (a+)+ — jako heurystykę. Traktuj ostrzeżenie jako warte drugiego spojrzenia, nie jako gwarancję, i czysty wynik w ten sam sposób.
Jak dokładny jest wygenerowany przykładowy ciąg?
To jest deterministyczny, przykład najlepszych wysiłków zbudowany poprzez przejście wzoru raz. Jest niezawodny dla prostych wzorów, ale lookarounds i złożone backreferences są tylko przybliżone.
Czy to waliduje wzorzec względem rzeczywistego silnika regex?
Nie — uruchamia własny parser, więc samo wyjaśnienie działa dla JavaScript, PCRE i Python syntax bez powstania silnika tylko do przeglądarki. Naprawdę niejasna składnia może być zgłaszana jako nieprawidłowa, nawet jeśli określony silnik by ją zaakceptował.
Czy moje wyrażenia regularne są gdzieś przesyłane?
Nie. Wyjaśnianie wzorca odbywa się całkowicie w przeglądarce — tekst, który wkleisz, nigdy nie jest wysyłany na serwer.