Regex testeris
Testējiet regulārās izteiksmes pret tekstu un skatiet visas izceltās atbilstības. Ļoti svarīgi izstrādātājiem, kas strādā ar paraugu saskaņošanu, datu validēšanu vai teksta apstrādi. Atrisiniet un pilnveidojiet regeksus reāllaikā, izmantojot vizuālu atgriezenisko saiti, kas precīzi parāda, kam precīzi atbilst jūsu izteiksme.
Biežāk uzdotie jautājumi
Regulārā izteiksme ir rakstzīmju virkne, kas definē meklēšanas modeli. Regex izmanto teksta meklēšanai, saskaņošanai un manipulēšanai ar tekstu, pamatojoties uz šabloniem, nevis precīzām virknēm. Tā ir ļoti noderīga tādiem uzdevumiem kā e-pasta adrešu validēšana, datu iegūšana no teksta, meklēšanas un aizstāšanas operācijas un žurnālu failu analīze.
Ievadiet regeksas modeli šablona laukā un ielīmējiet testa tekstu teksta apgabalā. Rīks reāllaikā izcels visas sakritības, parādot, kas precīzi ir ietverts jūsu rakstzīmē. Ja nekas netiek izcelts, jūsu modelis nesakrīt. Izmantojiet šo vizuālo atgriezenisko saiti, lai precizētu savu modeli, līdz tas precīzi atbilst vajadzīgajam.
Visbiežāk sastopamie karodziņi ir šādi: 'g' (globāls) atrod visus sakritības variantus, nevis tikai pirmo, 'i' (neskar lielo un mazo burtu atšķirības) ignorē lielo un mazo burtu atšķirības, 'm' (daudzrindu) liek ^ un $ sakrīt ar rindas sākumu/galu, nevis tikai ar virknes sākumu/galu, un 's' (dotall) liek . sakrist ar jaunas rindas rakstzīmēm. Kombinējiet tādus karodziņus kā 'gi', lai veiktu globālu saskaņošanu bez lielo un mazo burtu un atbilžu izšķiršanas.
E-pastam: pamēģiniet /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/ pamatapstiprināšanai. URL: /https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)/ works for most cases. Ņemiet vērā, ka ideāla e-pasta/URL validācija ir ārkārtīgi sarežģīta - šie paraugi attiecas uz visbiežāk sastopamajiem gadījumiem.
Punkts (.) atbilst jebkurai rakstzīmei. Zvaigznīte (*) nozīmē "nulle vai vairāk reižu", bet plus (+) nozīmē "viena vai vairākas reizes". Tātad .* atbilst nullei vai vairāk jebkurām rakstzīmēm (tostarp neatbilst nekam), bet .+ atbilst vismaz vienai rakstzīmei. Piemēram, 'a.*b' atbilst 'ab' vai 'a123b', bet 'a.+b' atbilst tikai 'a123b'.
Pēc noklusējuma tādi kvantifikatori kā *, + un {n,m} ir alkatīgi - tie atbilst, cik vien iespējams. Pievienojiet jautājuma zīmi (?) aiz kvantifikatora, lai tas nebūtu alkatīgs (slinks) un atbilstu pēc iespējas mazāk. Piemēram, tekstā "<div>hello</div><div>world</div>" /<div>.*<\/div>/ atbilst visai virknei (alkatīgs), bet /<div>.*?<\/div>/ atbilst katrai zīmei atsevišķi (nealkatīgs).
Lai atlasītu konkrētas atbilstības daļas, tiek izmantoti iekavās (). Piemēram, /user-(\d+)/ fiksē ciparu lietotāja ID. Sagūstītajai vērtībai var piekļūt vairumā valodu, izmantojot atbilstības grupas. Izmantojiet (?:...) grupām, kas nesatur sakritības grupas, ja jums ir nepieciešams sagrupēt kvantitatīvos rādītājus, bet nevēlaties uztvert vērtību.
Ievietojiet parauga žurnāla ierakstus testa virknes apgabalā un izveidojiet paraugus, lai iegūtu laika zīmogus, IP adreses, statusa kodus vai kļūdu ziņojumus. Vizuālā izcelšana parāda, kas tieši atbilst, palīdzot jums precizēt paraugus pirms to ievietošanas žurnālu analīzes rīkos, piemēram, Logstash, Splunk vai pielāgotos skriptos.
Lookaheads (?=...) un lookbehinds (?<=...) apgalvo, ka modelis pastāv priekšā vai aizmugurē, neiekļaujot to sakritībā. Piemēram, /\d+(?= dolāri)/ atbilst skaitļiem, aiz kuriem seko " dolāri", bet ietver tikai skaitli. Negatīvie lookaheads (?!...) un negatīvie lookbehinds (?<!...) apstiprina, ka šablons NEeksistē.
Jā! Pārbaudiet regeksas veidlapu validēšanas paraugus, piemēram, tālruņa numurus, pasta indeksus, kredītkartes vai pielāgotus formātus. Vizuālā atgriezeniskā saite palīdz pārliecināties, ka jūsu validācijas paraugi pareizi pieņem derīgus ievades datus un noraida nederīgus ievades datus, pirms tos ievietojat savā lietojumprogrammā.
