Regex Testētājs
Tūlītēji pārbaudiet un atkļūdojiet regulārās izteiksmes savā pārlūkprogrammā. Izceliet atbilstības, skatiet uzņemšanas grupas un izmantojiet aizstāšanas režīmu — bezmaksas un privāti.
Tūlītēji pārbaudiet un atkļūdojiet regulārās izteiksmes savā pārlūkprogrammā. Izceliet atbilstības, skatiet uzņemšanas grupas un izmantojiet aizstāšanas režīmu — bezmaksas un privāti.
Regulārās izteiksmes ir domēna specifiska valoda teksta modeļu saskaņošanai. Tie ir bijuši daļa no skaitļošanas kopš 1968. gada un tagad ir iebūvēti katrā modernajā programmēšanas valodā, teksta redaktorā un komandrindas meklēšanas rīkā. Sintakse ir kodolīga, taču tajā ir iespējamas kļūdas: nelielas izmaiņas rada smalki atšķirīgu atbilstību, un sarežģītas izteiksmes ātri kļūst nelasāmas. Testeris, kas parāda atbilstības reāllaikā, kad rediģējat modeli, ir visefektīvākais veids, kā izstrādāt un pārbaudīt regulāro izteiksmi.
Šis testeris darbojas jūsu pārlūkprogrammā, izmantojot JavaScript regex programmu (to pašu, ko jūsu lietojumprogramma izmanto, ja tā darbojas pārlūkprogrammā). Raksti un testa teksts tiek atjaunināti reaktīvi: ikvienas izmaiņas tiek atkārtoti izpildītas. Atbilstības grupas ir izceltas, tvertās grupas ir uzskaitītas, un karodziņi (nejutīgi pret reģistriem, vairākrindu, globāli) tiek parādīti testēšanai.
Regex sintakse dažādiem dzinējiem ir ļoti atšķirīga. JavaScript ievēro ECMAScript specifikāciju; Python, PCRE (ko izmanto PHP un daudzi citi), Java un Go katram ir savi dialekti ar pārklājošām, bet ne identiskām funkcijām. Šeit izstrādātie modeļi izmanto ECMAScript sintaksi; Lai nodrošinātu pārnēsājamību starp dzinējiem, ir jāpārbauda katra mērķa dokumentācija.
Regex kļūdas pēc izvietošanas ir ļoti grūti atkļūdot. Modelis, kas izskatās saprātīgs, var atbilst vairāk vai mazāk nekā paredzēts, var neizdoties malas gadījumos vai katastrofāli atkāpties no noteiktiem ievadiem. Pārbaudot modeļus interaktīvi pret reprezentatīvu ievadi, tiek konstatētas problēmas pirms koda pārskatīšanas un izstrādes.
Raksti arī gūst labumu no dokumentācijas. Rādot regulāro izteiksmi līdzās ievadei, tam ir jāatbilst un ievadei, kurai tai nevajadzētu atbilst, nolūks ir skaidri izteikts. Nākotnes uzturētāji (tostarp jūs pēc sešiem mēnešiem) novērtē dokumentētus testēšanas gadījumus vairāk nekā gudrus viengabalus.
Ierakstiet paraugu, ierakstiet testa ievadi, skatiet izceltās atbilstības tiešraidē.
JavaScript regex atbilst ECMAScript specifikācijai. Galvenās funkcijas: rakstzīmju klases ([abc], [^abc]), kvantori (*, +, ?, {n,m}), maiņa (|), grupēšana ((...)), tveršanas un neuztveršanas grupas, skatīšanās uz priekšu un aizmugure (mūsdienīgie dzinēji), atpakaļatsauces, nosauktas grupas, Unikoda rekvizītu atsoļi (ar standarta u karodziņu) un standarti.
Svarīgas atšķirības no PCRE un Python: lookbehind atbalsts nesen ir pieejams JavaScript (2018+); nosauktās grupas izmanto (?<nosaukums>...) sintakse; Dažiem Unikoda izņēmumiem ir nepieciešams, lai karodziņš u darbotos pareizi. Raksti, kas paredzēti lietošanai vairākās valodās, ir jāpārbauda katra mērķa dokumentācijā.
Veiktspēja: regulārās izteiksmes dzinējiem, kuru pamatā ir atkāpšanās (vairums ietver JavaScript), var būt katastrofāla atkāpšanās no noteiktiem patoloģiskiem modeļiem. Testi, kas pakarina testeri, liecina, ka modelis ir jāvienkāršo — parasti izvairoties no ligzdotiem kvantoriem un neskaidras maiņas.