Testează expresiile regulate cu evidențierea meciurilor în timp real, validarea modelelor și explicații ale simbolurilor regex comune. Salvează și reutilizează modelele tale folosite frecvent cu etichete personalizate.
Introduceți un model și text de testare pentru a vedea rezultatele
Introduceți un model și text de testare pentru a vedea rezultatele
Nu există modele salvate încă
.
Se potrivește cu orice caracter, cu excepția newline\d
Se potrivește cu orice cifră (0-9)\D
Se potrivește cu orice non-cifră\w
Se potrivește cu orice caracter de cuvânt (a-z, A-Z, 0-9, _)\W
Se potrivește cu orice caracter care nu este un cuvânt\s
Se potrivește cu orice caracter de spațiu\S
Se potrivește cu orice caracter care nu este un spațiu^
Se potrivește cu începutul liniei$
Se potrivește cu sfârșitul liniei*
Se potrivește cu 0 sau mai multe caractere anterioare+
Se potrivește cu 1 sau mai multe caractere anterioare?
Se potrivește cu 0 sau 1 caracter anterioar{n}
Se potrivește exact cu n caractere anterioare{n,}
Se potrivește cu cel puțin n caractere anterioare{n,m}
Se potrivește cu între n și m caractere anterioare[abc]
Se potrivește cu oricare dintre caracterele din paranteze[^abc]
Se potrivește cu orice caracter care nu este în paranteze(abc)
Grupuri multiple tokenuri împreună și capturează potrivireaa|b
Se potrivește fie cu a, fie cu b\b
Se potrivește cu o poziție de limită a cuvântuluiUn tester de pattern-uri pentru expresii regulate (regex) este un instrument esențial pentru dezvoltatori, analiști de date și oricine lucrează cu procesarea textului. Acest validator cuprinzător de pattern-uri regex vă permite să creați, să testați și să rafinați expresiile regulate în timp real, oferind feedback vizual imediat asupra potrivirilor de pattern. Fie că validați adrese de email, analizați fișiere de loguri sau extrageți date specifice din text, testerul nostru regex face procesul de dezvoltare și depanare mai rapid și mai intuitiv.
Expresiile regulate sunt secvențe puternice de potrivire a pattern-urilor care permit căutări, validări și manipulări sofisticate ale textului. Cu toate acestea, sintaxa lor poate fi complexă și dificil de stăpânit. Acest tester de pattern-uri regex simplifică procesul prin evidențierea potrivirilor în timp ce tastați, validând sintaxa pattern-ului și permițându-vă să salvați pattern-uri utilizate frecvent pentru referințe viitoare.
Utilizarea validatorului nostru de pattern-uri regex este simplă și intuitivă. Urmați acești pași pentru a începe:
Introduceți un Pattern de Expresie Regulată: Tastați pattern-ul dvs. regex în câmpul de input desemnat. Instrumentul validează pattern-ul în timp real, alertându-vă cu privire la eventualele erori de sintaxă.
Selectați Flagi Regex: Alegeți flag-urile corespunzătoare pentru pattern-ul dvs.:
g
(Global): Găsiți toate potrivirile în loc să vă opriți după prima potrivirei
(Insensibil la Majuscule): Faceți pattern-ul insensibil la majusculem
(Multilinie): Faceți ca ^
și $
să se potrivească cu începutul/sfârșitul fiecărei liniiIntroduceți Text de Test: Introduceți textul pe care doriți să-l testați împotriva pattern-ului dvs. în zona de text de testare.
Vizualizați Rezultatele în Timp Real: Pe măsură ce tastați, instrumentul automat:
Salvați Pattern-uri Utile: Pentru pattern-uri pe care le utilizați frecvent:
Copiați Rezultatele: Folosiți butonul "Copiază Potrivirile" pentru a copia tot textul potrivit în clipboard pentru a-l folosi în alte aplicații.
Interfața este împărțită în două panouri principale: panoul de input unde introduceți pattern-ul și textul de test, și panoul de rezultate care afișează potrivirile și informațiile despre pattern.
Expresiile regulate folosesc caractere și secvențe speciale pentru a defini pattern-uri de căutare. Iată un ghid pentru simbolurile fundamentale regex acceptate de instrumentul nostru:
Simbol | Descriere | Exemplu | Potrivirile |
---|---|---|---|
. | Potrivește orice caracter, cu excepția newline | a.c | "abc", "adc", "a1c", etc. |
\d | Potrivește orice cifră (0-9) | \d{3} | "123", "456", "789", etc. |
\D | Potrivește orice non-cifră | \D+ | "abc", "xyz", etc. |
\w | Potrivește orice caracter de cuvânt (a-z, A-Z, 0-9, _) | \w+ | "abc123", "test_123", etc. |
\W | Potrivește orice caracter non-cuvânt | \W+ | "!@#", " + ", etc. |
\s | Potrivește orice caracter de spațiu | a\sb | "a b", "a\tb", etc. |
\S | Potrivește orice caracter non-spațiu | \S+ | "abc", "123", etc. |
Simbol | Descriere | Exemplu | Potrivirile |
---|---|---|---|
^ | Potrivește începutul liniei | ^abc | "abc" la începutul unei linii |
$ | Potrivește sfârșitul liniei | abc$ | "abc" la sfârșitul unei linii |
\b | Potrivește o limită de cuvânt | \bword\b | "word" ca un cuvânt complet |
Simbol | Descriere | Exemplu | Potrivirile |
---|---|---|---|
* | Potrivește 0 sau mai multe din caracterul precedent | a*b | "b", "ab", "aab", etc. |
+ | Potrivește 1 sau mai multe din caracterul precedent | a+b | "ab", "aab", "aaab", etc. |
? | Potrivește 0 sau 1 din caracterul precedent | colou?r | "color", "colour" |
{n} | Potrivește exact n din caracterul precedent | a{3} | "aaa" |
{n,} | Potrivește cel puțin n din caracterul precedent | a{2,} | "aa", "aaa", "aaaa", etc. |
{n,m} | Potrivește între n și m din caracterul precedent | a{2,4} | "aa", "aaa", "aaaa" |
Simbol | Descriere | Exemplu | Potrivirile |
---|---|---|---|
[abc] | Potrivește oricare dintre caracterele din paranteze | [aeiou] | "a", "e", "i", "o", "u" |
[^abc] | Potrivește orice caracter care nu este în paranteze | [^aeiou] | Orice caracter în afară de "a", "e", "i", "o", "u" |
[a-z] | Potrivește orice caracter din interval | [a-z] | Orice literă mică |
Simbol | Descriere | Exemplu | Potrivirile |
---|---|---|---|
(abc) | Grupează mai multe token-uri împreună și capturează potrivirea | (abc)+ | "abc", "abcabc", etc. |
a|b | Potrivește fie a fie b | cat|dog | "cat", "dog" |
Odată ce ați stăpânit elementele de bază, puteți crea pattern-uri mai sofisticate pentru a rezolva provocări complexe de procesare a textului:
1^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
2
Acest pattern validează adresele de email asigurându-se că urmează formatul standard: utilizator@domeniu.tld.
1^(https?:\/\/)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)$
2
Acest pattern validează URL-urile, inclusiv cele cu sau fără protocolul http/https.
1^\(?(\d{3})\)?[- ]?(\d{3})[- ]?(\d{4})$
2
Acest pattern potrivește numerele de telefon din SUA în diverse formate: (123) 456-7890, 123-456-7890 sau 1234567890.
1^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$
2
Acest pattern validează datele în formatul YYYY-MM-DD, cu validare de bază pentru intervalele de lună și zi.
Afirmările lookahead și lookbehind vă permit să potriviți pattern-uri doar dacă sunt urmate de sau precedate de un alt pattern:
a(?=b)
potrivește "a" doar dacă este urmat de "b"a(?!b)
potrivește "a" doar dacă nu este urmat de "b"(?<=a)b
potrivește "b" doar dacă este precedat de "a"(?<!a)b
potrivește "b" doar dacă nu este precedat de "a"Testerul nostru regex suportă diverse flag-uri care modifică modul în care sunt potrivite pattern-urile:
^
și $
să se potrivească cu începutul/sfârșitul fiecărei liniiExpresiile regulate au numeroase aplicații practice în diferite domenii:
Validarea Formularelor: Asigurați-vă că input-urile utilizatorului se potrivesc cu formatele necesare:
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{8,}$
^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$
Parsing HTML: Extrageți elemente sau atribute specifice:
<img[^>]+src="([^">]+)"
<a[^>]+href="([^">]+)"
Analiza Fișierelor de Log: Extrageți informații din înregistrările de log:
\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b
\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}
ERROR: .*
Parsing CSV: Procesați valori separate prin virgulă cu câmpuri potențial citate:
(?:^|,)(?:"([^"]*(?:""[^"]*)*)"|([^,]*))
Găsire și Înlocuire: Identificați pattern-uri pentru înlocuire:
<[^>]*>
(\d{3})(\d{3})(\d{4})
→ ($1) $2-$3
Extracția Conținutului: Extrageți informații specifice din text nestructurat:
\b(?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s+\d{1,2},\s+\d{4}\b
\$\d+(?:\.\d{2})?
Sublinierea Sintaxei: Identificați construcțiile limbajului:
\b(?:var|let|const)\s+([a-zA-Z_$][\w$]*)\b
function\s+([a-zA-Z_$][\w$]*)\s*\(
Refactorizarea Codului: Găsiți pattern-uri care necesită actualizare:
\.oldMethod\(
eval\(
Testerul nostru de pattern-uri regex include un sistem de gestionare a pattern-urilor care vă permite să salvați și să reutilizați expresiile frecvent utilizate:
Considerați salvarea pattern-urilor care:
Când salvați pattern-uri, utilizați etichete descriptive care:
Organizați-vă pattern-urile salvate după:
Deși instrumentul nostru nu suportă direct partajarea pattern-urilor între utilizatori, puteți:
Chiar și dezvoltatorii experimentați se confruntă cu provocări legate de expresiile regulate. Iată soluții pentru probleme comune:
Dacă pattern-ul dvs. arată o eroare de validare:
Dacă regex-ul dvs. este lent sau cauzează întârzieri în browser:
(a+)+
)Dacă pattern-ul dvs. potrivește textul nedorit:
^
și $
) pentru a potrivi întregi șiruri\b
) acolo unde este cazulDacă pattern-ul dvs. nu se potrivește cu textul așteptat:
i
)Deși regex-ul este puternic, nu este întotdeauna cea mai bună soluție pentru fiecare sarcină de procesare a textului:
Pentru operațiuni simple de text, metodele native de string sunt adesea mai clare și mai eficiente:
String.indexOf()
pentru găsirea subșirurilorString.startsWith()
și String.endsWith()
pentru verificarea limitelor șiruluiString.split()
pentru tokenizare de bazăPentru formate de date structurate, parserele dedicate sunt mai robuste:
Pentru a înțelege semnificația textului mai degrabă decât doar pattern-urile:
Considerați alternativele la regex atunci când:
O expresie regulată (regex) este o secvență de caractere care definește un pattern de căutare. Aceste pattern-uri pot fi utilizate pentru căutări de stringuri, potriviri și operațiuni de manipulare a textului.
Un tester de pattern-uri regex vă ajută să dezvoltați și să depanați expresiile regulate oferind feedback vizual imediat asupra potrivirilor, validând sintaxa pattern-ului și permițându-vă să experimentați cu diferite pattern-uri și flag-uri fără a fi nevoie să le implementați mai întâi în cod.
Pentru a potrivi caractere speciale literale care au, în mod normal, o semnificație specială în regex, trebuie să le escapați cu o bară inversă. De exemplu, pentru a potrivi un punct literal, folosiți \.
în loc de doar .
.
.*
și .*?
într-un pattern regex?.*
este un quantificator lacom care potrivește cât mai multe caractere posibil, în timp ce .*?
este un quantificator lacom (non-lacom) care potrivește cât mai puține caractere posibil. Această distincție este importantă atunci când doriți să găsiți cea mai scurtă potrivire în loc de cea mai lungă.
Deși sintaxa de bază regex este similară în multe limbaje, există diferențe subtile în implementare. Testerul nostru folosește motorul regex JavaScript, care este compatibil cu multe limbaje web, dar poate avea diferențe față de regex în limbaje precum Python, Java sau Perl.
Pentru a valida că un întreg șir se potrivește cu un pattern, utilizați ancora ^
la început și ancora $
la sfârșit a regex-ului dvs. De exemplu, ^[0-9]+$
va potrivi doar șirurile care constau în întregime din cifre.
Grupurile de captură, create cu paranteze ()
, vă permit să extrageți porțiuni specifice din textul potrivit. În testerul nostru, puteți vedea toate potrivirile, inclusiv grupurile capturate. În limbajele de programare, de obicei, puteți accesa aceste capturi prin indexarea rezultatului potrivirii.
Pentru a îmbunătăți eficiența regex-ului: fiți specific cu clasele de caractere, evitați grupurile de captură inutile (folosiți grupuri non-capturante (?:...)
atunci când este posibil), limitați utilizarea lookahead-urilor/lookbehind-urilor, și evitați pattern-urile care cauzează backtracking catastrofal, cum ar fi quantificatorii imbrăcați.
Greșelile comune includ: neescaparea caracterelor speciale, crearea de pattern-uri care sunt prea lacome, uitarea de a ancora pattern-urile (cu ^
și $
), și scrierea de expresii excesiv de complexe care sunt greu de întreținut.
Expresiile regulate nu sunt bine adaptate pentru a analiza structuri imbricate precum HTML sau XML. Deși puteți crea pattern-uri regex pentru potrivirea HTML simplă, este în general mai bine să folosiți un parser HTML dedicat pentru procesarea complexă a HTML-ului.
Încercați astăzi testerul nostru de pattern-uri regex pentru a simplifica sarcinile de procesare a textului, a valida formatele de input și a extrage date semnificative din text nestructurat. Fie că sunteți un începător care învață elementele de bază ale expresiilor regulate sau un dezvoltator experimentat care lucrează la potriviri complexe de pattern-uri, instrumentul nostru oferă funcțiile de care aveți nevoie pentru a crea, testa și rafina eficient pattern-urile dvs. regex.
Descoperiți mai multe instrumente care ar putea fi utile pentru fluxul dvs. de lucru