Sări la conținut
Complet local

Regex din exemple

Transformă şiruri de exemplu în expresie regulată şi vezi care exemple se potrivesc.

Intrare
Exemple pe care paternul NU ar trebui să se potrivească
Ieșire

Regex din exemple

Lipiţi un mâner de şiruri pe care modelul ar trebui să le corespundă — una pe rând — şi acest instrument deduce expresie regulată care capturează forma pe care o împărtăşesc. Sub modelul generat, enumeră fiecare exemplu cu o bifă, pentru a putea vedea dintr-o privire dacă rezultatul acoperă efectiv ceea ce aţi lipit.

Nivelul de generalizare controlează cât de literal este rezultatul. "Caractere exacte" păstrează fiecare caracter aşa cum este şi doar combină exemple cu forme diferite prin alternare. "Clase de caractere" înlocuieşte cifre, litere şi spații cu \d, \p{Lu}/\p{Ll} şi \s, menţinând numărurile de repetiţie exacte din exemplele dvs. "Cuantificatori flexibili" merge mai departe şi transformă acele execuţii în potriviri unu-sau-mai-mult, care generalizeaz mai bine dar se potriveşte cu mai mult decât mostrarele dvs. Ancorarea adaugă ^ şi $ aşa încât întregul şir trebuie să se potrivească în loc de doar o substring, sensibilitatea majusculelor controlează dacă cazul conteaza, iar grupurile numite încadrează părţile variabile ale modelului pentru a le putea extrage după nume mai târziu. Opţiunea de dialect ajustează modul în care grupurile numite sunt scrise pentru JavaScript, PCRE sau Python, deoarece cele trei nu sunt de acord asupra sintaxei respective.

Adăugaţi şiruri pe care modelul NU ar trebui să le corespundă în al doilea câmp, iar instrumentul verifică de asemenea modelul generat faţă de acestea — orice exemplu negativ pe care îl corespunde în continuare este marcat, care este cel mai rapid mod de a detecta un model prea larg. Activaţi explicaţia pentru a obţine modelul împărţit în piesele sale individuale cu o descriere în limba curată a ceea ce fiecare fac.

Totul se execută local în browserul dvs.: exemplele pe care le lipiţi, exemplele negative şi modelul generat nu pleacă niciodată de pe dispozitivul dvs. Copiaţi rezultatul, descărcaţi-l ca fişier .txt, sau trimiteţi ieşirea înapoi în intrare pentru a o rafina cu mai multe exemple.

FAQ

Regex-ul generat se potriveste întotdeauna cu toate exemplele pe care le-am lipit?
Da — modelul este construit direct din exemplele dvs., deci este conceput pentru a se potrivi cu toate sub nivelul de stricteţe pe care l-aţi ales. Dacă exemplele dvs. au forme cu adevărat diferite, instrumentul revine la potrivirea oricăruia dintre formele distincte.
Ce schimbă cu adevărat "clase de caractere"?
Înlocuieşte execuţii de cifre, litere şi spații cu clasa lor regex (\d, \p{Lu}, \p{Ll}, \s) în loc de caracterele literale, menţinând lungimile exacte văzute în exemplele dvs. — deci "AB12" devine \p{Lu}{2}\d{2}, nu un literal "AB12".
De ce s-a potrivit modelul şi cu una dintre exemplele mele negative?
O potrivire negativă de obicei înseamnă că generalizarea este mai largă decât intenţia dvs. — încercaţi un nivel mai strict, activaţi ancorarea, sau adăugaţi un exemplu negativ mai specific, aşa încât linia marcată să arate exact ceea ce s-a strecurat.
Va funcţiona modelul exact la fel în Python sau PCRE?
Clasele de caractere şi cuantificatorii sunt împărtăşiţi între dialecte, dar sintaxa grupului numit diferă — opţiunea de dialect doar ajustează modul în care aceste grupuri sunt afişate (JavaScript foloseşte (?<name>…), PCRE şi Python în mod tradiţional folosesc (?P<name>…)); testati întotdeauna rezultatul faţă de motorul dvs. real.
Şirurile mele de exemplu sunt încărcate oriunde?
Nu. Modelul este generat în întregime în browserul dvs. — exemplele dvs. şi regex-ul generat nu pleacă niciodată de pe dispozitivul dvs.