Salt la conținutul principalSalt la calculator
108 calculatoareRezultate liveSoluții pas cu pas

Instrument Rechnerpilot

Tester Regex

RegExp este executat izolat într-un Web Worker pe textul de test; rezultatele și grupurile sunt afișate.

Dezvoltatori

Execuția izolată nu este disponibilă în acest mediu. Regex-Tester necesită suport pentru Web Worker în browser.

Explicație

Cum funcționează Tester Regex

Regex-Tester evaluează o expresie regulată (sintaxă JavaScript/ECMAScript) pe un text de test și afișează rezultatele, poziția acestora, precum și grupurile captate. Prin flags controlezi, printre altele, căutarea globală (g), majuscule/minuscule (i) și comportamentul pe mai multe linii (m).

Important pentru securitate: un model introdus de utilizator poate calcula oricât de mult din cauza "katastrophales Backtracking". O simplă limitare a lungimii intrării nu protejează împotriva acestui lucru. De aceea evaluarea rulează într-un Web Worker separat; dacă acesta nu răspunde într-un timp scurt, este terminat forțat și eliminat. Firul principal — și implicit interfața de utilizare — rămâne reactiv în orice moment.

Limitele acestui instrument

  • Doar sintaxă JavaScript-Regex — particularitățile PCRE/.NET lipsesc.
  • Modelele care blochează sunt întrerupte, nu "reparate".
  • Maximum 1000 de rezultate evaluate (sunt afișate primele 100).

Surse

  • ECMAScript Specification: Sintaxa și semantica RegExp.
  • OWASP: Regular expression Denial of Service (ReDoS).

Practică

Exemple practice

Verificare aproximativă a e-mailului

Modelul \S+@\S+\.\S+ găsește șiruri de caractere simple de tip e-mail.

Extragerea cifrelor

Cu flag-ul g, \d+ returnează toate secvențele de cifre din text.

Utilizarea grupurilor

Parantezele rotunde captează rezultate parțiale, care sunt afișate separat.

Întrebări frecvente

Întrebări frecvente

De ce nu îngheață pagina?

Evaluarea expresiei regulate rulează într-un Web Worker separat. Dacă un model blochează prin katastrophales Backtracking, interfața de utilizare rămâne reactivă; workerul este întrerupt forțat după scurt timp.

Ce este katastrophales Backtracking?

Anumite modele (de exemplu cuantificatori imbricați precum (a+)+) pot necesita, la intrări nefavorabile, un număr exponențial de pași. Acest instrument întrerupe în mod determinist astfel de execuții, în loc să blocheze.

Datele mele sunt transmise?

Nu. Modelul și textul de test sunt evaluate exclusiv local în browser (în worker). Nu are loc nicio transmitere.

Ce sintaxă este acceptată?

Sintaxa expresiilor regulate din JavaScript (ECMAScript). Alte dialecte (PCRE, .NET) pot diferi.

De ce nu sunt afișate toate rezultatele?

Pentru protecția împotriva ieșirilor extrem de mari, sunt evaluate maximum 1000 de rezultate; sunt afișate primele 100, iar în exportul PDF primele 50. La atingerea limitei de evaluare se afișează o notă.

Sfaturi

Bine de știut

  • Pentru toate rezultatele, activează flag-ul g.
  • Evită cuantificatorii imbricați precum (a+)+ — pot bloca.
  • Evaluarea rulează izolat; pagina nu îngheață.

Calculatoare asociate

Mai multe instrumente