Toolbox Hub
Wszystkie narzędzia

Regex Tester

Test regular expressions

Test regular expressions Działa lokalnie w Twojej przeglądarce

About the

Tester Regex uruchamia wyrażenie regularne JavaScript na podstawie własnego przykładowego tekstu i podświetla każde dopasowanie podczas pisania, dzięki czemu zamiast zgadywać, możesz obserwować sukces lub porażkę wzorca. Oprócz wyróżnień wyświetla listę każdego dopasowania z jego pozycją początkową i grupami przechwytywania, co jest częścią, która faktycznie mówi ci, czy grupa 2 to żądana wartość, czy pusty ciąg. Trzy błędy powodują większość uszkodzonych wyrażeń regularnych i wszystkie trzy są tutaj widoczne: zachłanny kwantyfikator cicho połykający więcej tekstu niż zamierzono, pozbawiona znaczenia kropka pasująca do czegokolwiek i brakująca flaga globalna, która zatrzymuje wyszukiwanie po pierwszym trafieniu.

Where people use the

  • Debugowanie wzorca analizowania dziennika w oparciu o kilka rzeczywistych linii dziennika.
  • Opracuj regułę dotyczącą numeru telefonu lub kodu pocztowego przed podłączeniem jej do formularza.
  • Wyodrębnianie numerów zamówień lub identyfikatorów z wklejonego bloku tekstu.
  • Uczenie się, jak zachowują się kwantyfikatory, poprzez zmianę jednego znaku i obserwowanie ruchu świateł.

How to use the

  1. 1

    Wklej tekst, który chcesz przetestować

    Użyj prawdziwej próbki, a nie wymyślonej. Przypadki graniczne w rzeczywistych danych łamią wzorzec, więc dołącz linię, która również nie powinna pasować.

  2. 2

    Napisz wzór

    Wprowadź wyrażenie bez otaczających je ukośników, na przykład [a-z]+ zamiast /[a-z]+/. Flagi to osobne przełączniki.

  3. 3

    Włącz lub wyłącz flagi

    g znajduje każde dopasowanie zamiast zatrzymywać się na pierwszym, i ignoruje wielkość liter, m powoduje, że kotwice działają w poszczególnych liniach, s pozwala kropce rozciągać się na nowe linie, u włącza pełny tryb Unicode, a y zakotwicza dopasowanie do lastIndex.

  4. 4

    Przeczytaj tabelę meczów

    Każdy wynik pokazuje dopasowany tekst, jego przesunięcie znaków i każdą grupę przechwytywania. Nieoczekiwana pusta grupa zwykle oznacza, że ​​opcjonalny kwantyfikator nie pasuje do niczego.

  5. 5

    Skopiuj gotowy wzór

    Kiedy najważniejsze elementy będą wyglądać prawidłowo, skopiuj wyrażenie i wklej je do swojego kodu, pamiętając o przeniesieniu flag.

Wskazówki i najlepsze praktyki

  • Przetestuj jedną regułę na wzór. Wyrażenie regularne wykonujące trzy zadania jest nieczytelne i niemożliwe do debugowania.
  • Dołącz wiersz, który nie może pasować, i potwierdź, że nie jest podświetlony.
  • Preferuj grupy nazwane, takie jak rok, miesiąc, dzień, zamiast grup numerowanych, aby wzór nadal coś znaczył, gdy wrócisz do niego w następnym miesiącu.

Często zadawane pytania

Z jakiego smaku wyrażenia regularnego to korzysta?

JavaScript za pośrednictwem własnego silnika RegExp przeglądarki. Składnia jest zbliżona do modułu re modułu PCRE i Pythona, ale nie jest identyczna. Grupy nazwane, lookahead, lookbehind i zmiany właściwości Unicode działają w bieżących przeglądarkach.

Dlaczego mój wzór pasuje do znacznie większej ilości tekstu, niż się spodziewałem?

Ponieważ kwantyfikatory są domyślnie zachłanne. Coś takiego jak .* lub [0-9]+ zużyje tyle, ile się da, jednocześnie pozwalając na dopasowanie reszty wzorca. Dodaj znak zapytania, żeby było leniwie, więc .*? lub [0-9]+? zatrzymuje się przy pierwszej nadarzającej się okazji.

Dlaczego otrzymuję tylko jeden wynik?

Flaga globalna jest wyłączona. Bez g silnik zwraca pierwsze dopasowanie i zatrzymuje się. Przełącz g, aby zebrać wszystkie dopasowania na wejściu.

Dlaczego moja kotwica nie działa na drugiej linii?

Domyślnie kotwice daszka i dolara odnoszą się do początku i końca całego ciągu, a nie każdej linii. Włącz flagę m, aby uświadomić im linię.

Czy moje dane testowe są gdzieś wysyłane?

Nie. Dopasowanie odbywa się w Twojej przeglądarce za pomocą wbudowanego obiektu RegExp. Nic nie jest przesyłane, dlatego możesz bezpiecznie wkleić prawdziwe linie logu lub fragmenty konfiguracji.

Czy mogę użyć tego do sprawdzenia poprawności danych wejściowych w formularzu?

Możesz opracować wzorzec tutaj, ale zawsze sprawdź poprawność ponownie na serwerze. Wyrażenie regularne po stronie klienta jest wygodą dla użytkownika, a nie kontrolą bezpieczeństwa, ponieważ można je całkowicie pominąć.

Powiązane narzędzia