Przejdź do głównej treści
LibraTool logoLibraTool

Tester wyrażeń regularnych za darmo

Testuj wyrażenia regularne względem tekstu w czasie rzeczywistym. Wyświetlaj podświetlone dopasowania, grupy i szczegóły dopasowań.

Działa offline po wczytaniu
//g
Flagi:

g Globalny — znajdź wszystkie dopasowania · i Bez rozróżniania małych i dużych liter · m Wieloliniowy — ^ i $ pasują do granic linii · s Dotall — kropka dopasowuje nową linię · u Unicode — pełne dopasowanie punktu kodu · y Sticky — każde dopasowanie musi rozpoczynać się tam, gdzie kończy się poprzednie

Przykłady:

Dopasowania

The quick brown fox jumps over the lazy dog. Pack my box with five dozen liquor jugs.Wprowadź wzorzec powyżej, aby zobaczyć podświetlone dopasowania.

Typowe zastosowania

  • Testuj Regex do Weryfikacji FormularzaNapisz i testuj wyrażenia regularne do walidacji adresów e-mail, numerów telefonów, kodów pocztowych i innych danych wejściowych formularza.
  • Analizuj Dzienniki Serwerów za Pomocą RegexNapisz wzorce regex, aby wyodrębnić znaczniki czasu, adresy IP, kody błędów i strukturalne dane z plików dziennika.
  • Wyodrębnij i Zamień Tekst za Pomocą RegexUżyj regex, aby znaleźć wzorce, wyodrębnić dane lub przygotować operacje znajdź i zamień, zanim uruchomisz je w edytorze.
  • Testuj Wzorce Routingu URLNapisz i testuj wzorce regex dla reguł routingu URL w Express, Nginx i Apache.
  • Wyodrębnij Dane za Pomocą RegexBuduj i testuj wzorce, aby wyodrębnić dane strukturalne z tekstu nieustrukturyzowanego, HTML lub markdown.

Jak to działa

To narzędzie działa w całości w przeglądarce z użyciem wbudowanego silnika RegExp w JavaScript — tego samego, który napędza każdy skrypt na każdej odwiedzanej stronie. Żaden wzorzec, tekst testowy ani wynik dopasowania nie jest nigdy wysyłany na serwer.

  1. 1
    Wzorzec kompilowany do RegExp
    Podczas pisania narzędzie wywołuje new RegExp(pattern, flags) z włączonymi flagami (g, i, m, s, u, y). Jeśli wzorzec jest składniowo niepoprawny, przechwycony komunikat błędu pojawia się natychmiast obok — bez przycisku zatwierdzania.
  2. 2
    Pętla exec() zbiera dopasowania
    Silnik wykonuje re.exec(text) w pętli, zapisując indeks znaku każdego dopasowania, jego długość, pełną wartość, numerowane grupy przechwytujące i grupy nazwane. Limit bezpieczeństwa 10 000 dopasowań zapobiega niekontrolowanym wzorcom, a ochrona przed dopasowaniami o zerowej długości przesuwa lastIndex, aby uniknąć nieskończonych pętli.
  3. 3
    Tekst dzielony na wyróżnione fragmenty
    Funkcja buildSegments przechodzi po przesunięciach dopasowań i dzieli tekst źródłowy na naprzemienne fragmenty niedopasowane i dopasowane. Dopasowane fragmenty są opakowywane w elementy <mark> z cyklicznie zmieniającymi się kolorami, więc nakładające się lub sąsiednie dopasowania pozostają wizualnie odrębne.
  4. 4
    Tryb zamiany przez String.replace
    Przejście w tryb zamiany bezpośrednio wywołuje testText.replace(new RegExp(pattern, flags), replacement), więc odwołania, takie jak $1 i $<name>, działają dokładnie tak jak w kodzie JavaScript. Tekst wynikowy jest pokazywany na żywo i można go skopiować do schowka.

Powiązane narzędzia

Często zadawane pytania