Tester expresii regulate
🔒 Rulează în browser
Foaie de referință (clic pentru a insera)
Clase de caractere
Ancore
Cuantificatori
Grupuri și alternanță
Lookaround
Expresii regulate JavaScript, cu vizibilitate completă asupra grupurilor
Pattern-urile rulează prin motorul nativ RegExp, deci comportamentul este
identic cu ce ar face propriul dumneavoastră cod JavaScript — inclusiv sintaxa specifică
JavaScript, precum grupurile cu nume și flag-urile s/u/y.
Fiecare potrivire afișează grupurile de captură numerotate și cu nume, în ordinea în care sunt
declarate în pattern, iar modul Înlocuire acceptă aceeași substituție
$1/grup-cu-nume ca String.replace.
Un pattern scăpat de sub control nu poate bloca niciodată această pagină
Anumite pattern-uri sunt patologic de lente pe un anumit tip de text — fenomen numit backtracking catastrofal — și pot bloca firul de execuție pe care rulează timp de secunde, minute sau mai mult. Fiecare testare și înlocuire de aici rulează într-un worker separat, cu o limită de două secunde: dacă pattern-ul nu a răspuns până atunci, worker-ul este oprit automat și unul nou este pornit imediat, astfel încât un pattern problematic costă cel mult două secunde, niciodată o pagină blocată.
Întrebări frecvente
Ce variantă de expresii regulate folosește acest instrument?
Expresii regulate JavaScript (motorul nativ RegExp) — în mare parte compatibile cu PCRE/Python, dar sintaxa grupurilor cu nume, suportul pentru lookbehind și literele pentru flag-uri sunt specifice JavaScript.
Cum sunt afișate grupurile numerotate și cele cu nume?
Fiecare grup de captură apare în lista de potriviri în ordinea din care este declarat în pattern, împreună cu numele lui (dacă are unul) sau un număr de ordine, și subșirul exact capturat.
Ce face modul Înlocuire?
Modul Înlocuire substituie fiecare potrivire cu un șablon scris de dumneavoastră, în care $1, $2... trimit către grupurile numerotate, iar un semn dolar urmat de numele grupului între paranteze unghiulare trimite către cele cu nume — aceeași sintaxă ca la String.replace din JavaScript.
De ce ar putea un pattern să expire după două secunde?
Anumite pattern-uri (de exemplu un grup repetat aflat în interiorul altui grup repetat) pot declanșa backtracking catastrofal pe un text care nu se potrivește, blocând orice le execută. Testarea rulează mereu într-un worker separat, cu o limită de două secunde, astfel încât un pattern scăpat de sub control este oprit automat, fără să blocheze această pagină.