Whiz Tools

Regex rakstu testētājs

Kopēt

Sakritības rezultāti

Ievadiet rakstu un testa tekstu, lai redzētu rezultātus

Saglabāt rakstu

Saglabātie raksti

Vēl nav saglabātu rakstu

Regex simbolu ceļvedis

.Atbilst jebkurai zīmei, izņemot jaunu rindu
\dAtbilst jebkurai ciparam (0-9)
\DAtbilst jebkurai neciparu zīmei
\wAtbilst jebkurai vārda zīmei (a-z, A-Z, 0-9, _)
\WAtbilst jebkurai ne-vārda zīmei
\sAtbilst jebkurai tukšai zīmei
\SAtbilst jebkurai ne-tukšai zīmei
^Atbilst rindiņas sākumam
$Atbilst rindiņas beigām
*Atbilst 0 vai vairāk iepriekšējās zīmes
+Atbilst 1 vai vairāk iepriekšējās zīmes
?Atbilst 0 vai 1 iepriekšējās zīmes
{n}Atbilst tieši n iepriekšējās zīmes
{n,}Atbilst vismaz n iepriekšējās zīmes
{n,m}Atbilst starp n un m iepriekšējās zīmes
[abc]Atbilst jebkurai no zīmēm, kas ir iekavās
[^abc]Atbilst jebkurai zīmei, kas nav iekavās
(abc)Apvieno vairākus simbolus kopā un sag捕a atbilstību
a|bAtbilst vai nu a, vai b
\bAtbilst vārda robežas pozīcijai

Regex Modeļu Testētājs un Validētājs

Ievads

Regulārā izteiksme (regex) modeļu testētājs ir būtisks rīks izstrādātājiem, datu analītiķiem un ikvienam, kas strādā ar teksta apstrādi. Šis visaptverošais regex modeļu validētājs ļauj jums izveidot, testēt un uzlabot regulārās izteiksmes reāllaikā, sniedzot tūlītēju vizuālu atgriezenisko saiti par modeļa atbilstībām. Neatkarīgi no tā, vai jūs validējat e-pasta adreses, parsējat žurnālfailus vai izvelkat konkrētus datus no teksta, mūsu regex testētājs padara izstrādes un kļūdu novēršanas procesu ātrāku un intuitīvāku.

Regulārās izteiksmes ir jaudīgas modeļu atbilstības secības, kas ļauj veikt sarežģītu teksta meklēšanu, validāciju un manipulāciju. Tomēr to sintakse var būt sarežģīta un grūti apgūstama. Šis regex modeļu testētājs vienkāršo procesu, izceļot atbilstības, kamēr jūs rakstāt, validējot modeļa sintaksi un ļaujot jums saglabāt bieži izmantotos modeļus turpmākai atsaucē.

Kā lietot Regex Modeļu Testētāju

Mūsu regex modeļu validētāja izmantošana ir vienkārša un intuitīva. Izpildiet šos soļus, lai sāktu:

  1. Ievadiet regulārās izteiksmes modeli: Ierakstiet savu regex modeli norādītajā ievades laukā. Rīks reāllaikā validē jūsu modeli, brīdinot par jebkurām sintakses kļūdām.

  2. Izvēlieties regex karogus: Izvēlieties piemērotus karogus savam modelim:

    • g (Globālais): Atrodiet visas atbilstības, nevis apstājieties pēc pirmās atbilstības
    • i (Nerakstveidīgs): Padariet modeli nerakstveidīgu
    • m (Vairāku rindu): Padariet ^ un $ atbilstīgus katras rindas sākumam/beigām
    • Dažādas šo karogu kombinācijas ir pieejamas nolaižamajā sarakstā
  3. Ievadiet testēšanas tekstu: Ierakstiet tekstu, kuru vēlaties testēt pret savu modeli, testēšanas teksta laukā.

  4. Skatiet rezultātus reāllaikā: Kamēr jūs rakstāt, rīks automātiski:

    • Izceļ visas modeļa atbilstības testēšanas tekstā
    • Rāda kopējo atrasto atbilstību skaitu
    • Norāda, vai modelis atbilst visam tekstam
  5. Saglabājiet noderīgus modeļus: Modeļiem, kurus jūs izmantojat bieži:

    • Ierakstiet aprakstošu etiķeti savam modelim
    • Noklikšķiniet uz "Saglabāt" pogas
    • Piekļūstiet saviem saglabātajiem modeļiem sadaļā "Saglabātie modeļi"
  6. Kopējiet rezultātus: Izmantojiet "Kopēt atbilstības" pogu, lai kopētu visu atbilstīgo tekstu savā starpliktuvē, lai to izmantotu citās lietojumprogrammās.

Interfeiss ir sadalīts divās galvenajās paneļos: ievades panelī, kur jūs ievadāt savu modeli un testēšanas tekstu, un rezultātu panelī, kas parāda atbilstības un modeļa informāciju.

Regulārās Izteiksmes Pamati

Regulārās izteiksmes izmanto īpašus simbolus un secības, lai definētu meklēšanas modeļus. Šeit ir ceļvedis par pamata regex simboliem, ko atbalsta mūsu rīks:

Simbolu Atbilstība

SimbolsAprakstsPiemērsAtbilst
.Atbilst jebkurai rakstzīmei, izņemot jauno rindua.c"abc", "adc", "a1c" utt.
\dAtbilst jebkurai ciparu rakstzīmei (0-9)\d{3}"123", "456", "789" utt.
\DAtbilst jebkurai neciparu rakstzīmei\D+"abc", "xyz" utt.
\wAtbilst jebkurai vārda rakstzīmei (a-z, A-Z, 0-9, _)\w+"abc123", "test_123" utt.
\WAtbilst jebkurai ne-vārda rakstzīmei\W+"!@#", " + " utt.
\sAtbilst jebkurai tukšās vietas rakstzīmeia\sb"a b", "a\tb" utt.
\SAtbilst jebkurai ne-tukšās vietas rakstzīmei\S+"abc", "123" utt.

Pozīcijas Aizsargi

SimbolsAprakstsPiemērsAtbilst
^Atbilst rindas sākumam^abc"abc" rindas sākumā
$Atbilst rindas beigāmabc$"abc" rindas beigās
\bAtbilst vārda robežai\bword\b"word" kā pilnam vārdam

Kvantifikatori

SimbolsAprakstsPiemērsAtbilst
*Atbilst 0 vai vairāk iepriekšējās rakstzīmesa*b"b", "ab", "aab" utt.
+Atbilst 1 vai vairāk iepriekšējās rakstzīmesa+b"ab", "aab", "aaab" utt.
?Atbilst 0 vai 1 iepriekšējās rakstzīmescolou?r"color", "colour"
{n}Atbilst precīzi n iepriekšējās rakstzīmesa{3}"aaa"
{n,}Atbilst vismaz n iepriekšējās rakstzīmesa{2,}"aa", "aaa", "aaaa" utt.
{n,m}Atbilst starp n un m iepriekšējās rakstzīmesa{2,4}"aa", "aaa", "aaaa"

Rakstzīmju Klases

SimbolsAprakstsPiemērsAtbilst
[abc]Atbilst jebkurai no rakstzīmēm iekavās[aeiou]"a", "e", "i", "o", "u"
[^abc]Atbilst jebkurai rakstzīmei, kas nav iekavās[^aeiou]Jebkura rakstzīme, izņemot "a", "e", "i", "o", "u"
[a-z]Atbilst jebkurai rakstzīmei diapazonā[a-z]Jebkura maza burta rakstzīme

Grupēšana un Alternatīva

SimbolsAprakstsPiemērsAtbilst
(abc)Grupē vairākus simbolus kopā un saglabā atbilstību(abc)+"abc", "abcabc" utt.
a|bAtbilst vai nu a, vai bcat|dog"cat", "dog"

Uzlabotas Regex Modeļu

Kad esat apguvis pamatus, varat izveidot sarežģītākus modeļus, lai risinātu sarežģītas teksta apstrādes problēmas:

E-pasta Validācija

^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$

Šis modelis validē e-pasta adreses, nodrošinot, ka tās atbilst standarta formātam: lietotājvārds@domēns.tld.

URL Validācija

^(https?:\/\/)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)$

Šis modelis validē URL, tostarp tos, kas ir ar vai bez http/https protokola.

Tālruņa Numura Validācija (ASV Formāts)

^\(?(\d{3})\)?[- ]?(\d{3})[- ]?(\d{4})$

Šis modelis atbilst ASV tālruņa numuriem dažādos formātos: (123) 456-7890, 123-456-7890 vai 1234567890.

Datuma Validācija (YYYY-MM-DD)

^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$

Šis modelis validē datumus YYYY-MM-DD formātā, ar pamata validāciju mēneša un dienas diapazonos.

Priekšskatījums un Aizskats

Priekšskatījuma un aizskata apgalvojumi ļauj jums atbilst modeļiem tikai tad, ja tie ir sekojoši vai priekšā citiem modeļiem:

  • Pozitīvs priekšskatījums: a(?=b) atbilst "a", tikai ja to seko "b"
  • Negatīvs priekšskatījums: a(?!b) atbilst "a", tikai ja to neseko "b"
  • Pozitīvs aizskats: (?<=a)b atbilst "b", tikai ja to priekšā ir "a"
  • Negatīvs aizskats: (?<!a)b atbilst "b", tikai ja to priekšā nav "a"

Darbs ar Regex Karogiem

Mūsu regex testētājs atbalsta dažādus karogus, kas maina to, kā modeļi tiek atbilstīgi:

  • g (Globālais): Atrodiet visas atbilstības, nevis apstājieties pēc pirmās atbilstības
  • i (Nerakstveidīgs): Padariet modeli nerakstveidīgu
  • m (Vairāku rindu): Padariet ^ un $ atbilstīgus katras rindas sākumam/beigām
  • Kombinācijas: Jūs varat kombinēt karogus, lai iegūtu sarežģītākas atbilstības prasības

Regex Modeļu Testēšanas Lietojumi

Regulārās izteiksmes ir daudz praktisku pielietojumu dažādās jomās:

Tīmekļa Izstrāde

  1. Formu Validācija: Nodrošiniet, ka lietotāju ievades atbilst prasītajiem formātiem:

    • E-pasta adreses: ^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
    • Paroles (ar sarežģītības prasībām): ^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{8,}$
    • URL: ^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$
  2. HTML Parsēšana: Izvelciet konkrētus elementus vai atribūtus:

    • Atrodiet visus attēlu tagus: <img[^>]+src="([^">]+)"
    • Izvelciet saites: <a[^>]+href="([^">]+)"

Datu Apstrāde

  1. Žurnālfailu Analīze: Izvelciet informāciju no žurnāla ierakstiem:

    • IP adreses: \b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b
    • Laika zīmogi: \d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}
    • Kļūdu ziņojumi: ERROR: .*
  2. CSV Parsēšana: Apstrādājiet komatu atdalītas vērtības ar potenciāli citētiem laukiem:

    • CSV lauka meklētājs: (?:^|,)(?:"([^"]*(?:""[^"]*)*)"|([^,]*))

Teksta Apstrāde

  1. Meklēšana un Aizvietošana: Identificējiet modeļus aizvietošanai:

    • Noņemiet HTML tagus: <[^>]*>
    • Formatējiet tālruņa numurus: (\d{3})(\d{3})(\d{4})($1) $2-$3
  2. Saturu Izvilkšana: Izvelciet konkrētu informāciju no strukturēta teksta:

    • Izvelciet datumus: \b(?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s+\d{1,2},\s+\d{4}\b
    • Atrodiet naudas vērtības: \$\d+(?:\.\d{2})?

Programmēšana un Kodēšana

  1. Sintakses Izcelšana: Identificējiet valodas konstrukcijas:

    • JavaScript mainīgie: \b(?:var|let|const)\s+([a-zA-Z_$][\w$]*)\b
    • Funkciju definīcijas: function\s+([a-zA-Z_$][\w$]*)\s*\(
  2. Koda Pārveidošana: Atrodiet modeļus, kas jāatjaunina:

    • Novecojušas API izsaukumi: \.oldMethod\(
    • Nepietiekami drošas funkcijas: eval\(

Modeļu Saglabāšana un Pārvaldība

Mūsu regex modeļu testētājs ietver modeļu pārvaldības sistēmu, kas ļauj jums saglabāt un atkārtoti izmantot bieži izmantotās izteiksmes:

Kad Saglabāt Modeļus

Apsveriet iespēju saglabāt modeļus, kas:

  • Jūs izmantojat bieži dažādos projektos
  • Ir sarežģīti un grūti atcerēties
  • Kalpo specifiskām validācijas vajadzībām jūsu darbā
  • Jūs esat uzlabojis pēc vairākiem iterācijām

Labākās Prakses Modeļu Etiķetēm

Saglabājot modeļus, izmantojiet aprakstošas etiķetes, kas:

  • Norāda modeļa mērķi (piemēram, "E-pasta Validētājs")
  • Minē specifiskos formātus (piemēram, "ASV Tālruņa Numurs")
  • Iekļauj versijas informāciju, ja jūs iterējat uz modeļiem (piemēram, "URL Validētājs v2")
  • Ir kodolīgas, bet informatīvas

Modeļu Organizācija

Organizējiet savus saglabātos modeļus pēc:

  • Funkcijas (validācija, izvilkšana, aizvietošana)
  • Jomas (tīmekļa izstrāde, datu apstrāde)
  • Sarežģītības (pamats, uzlabots)
  • Izmantošanas biežuma

Modeļu Koplietošana

Lai gan mūsu rīks tieši neatbalsta modeļu koplietošanu starp lietotājiem, jūs varat:

  • Kopēt modeļus, lai dalītos ar kolēģiem
  • Dokumentēt savus modeļus kopīgā repozitorijā
  • Iekļaut modeļu aprakstus projekta dokumentācijā

Biežāk Uzdotie Jautājumi

Kas ir regulārā izteiksme?

Regulārā izteiksme (regex) ir rakstzīmju secība, kas nosaka meklēšanas modeli. Šie modeļi var tikt izmantoti virkņu meklēšanai, atbilstībai un teksta manipulācijas operācijām.

Kāpēc man vajadzīgs regex modeļu testētājs?

Regex modeļu testētājs palīdz jums izstrādāt un novērst kļūdas regulārajās izteiksmēs, sniedzot tūlītēju vizuālu atgriezenisko saiti par atbilstībām, validējot modeļa sintaksi un ļaujot jums eksperimentēt ar dažādiem modeļiem un karogiem, pirms tos īstenojat kodā.

Kā es varu atbilst literālai īpašai rakstzīmei, piemēram, punktam vai zvaigznītei?

Lai atbilstu literālām īpašām rakstzīmēm, kurām parasti ir īpaša nozīme regex, jums tās jāizvairās ar atpakaļslīpo svītru. Piemēram, lai atbilstu literālam punktam, izmantojiet \. nevis tikai ..

Kāda ir atšķirība starp .* un .*? regex modelī?

.* ir alkatīgs kvantifikators, kas atbilst pēc iespējas vairāk rakstzīmju, kamēr .*? ir slinks (nealkojošs) kvantifikators, kas atbilst pēc iespējas mazāk rakstzīmju. Šī atšķirība ir svarīga, kad vēlaties atrast īsāko atbilstību, nevis garāko.

Vai es varu izmantot šo regex testētāju modeļiem jebkurā programmēšanas valodā?

Lai gan pamatregex sintakse ir līdzīga daudzās valodās, pastāv nianses to īstenošanā. Mūsu testētājs izmanto JavaScript regex dzinēju, kas ir saderīgs ar daudzām tīmekļa valodām, bet var atšķirties no regex valodām, piemēram, Python, Java vai Perl.

Kā es varu validēt visu virkni ar regex?

Lai validētu, ka visa virkne atbilst modelim, izmantojiet ^ aizsargu sākumā un $ aizsargu beigās jūsu regex. Piemēram, ^[0-9]+$ atbilst tikai virknes, kas sastāv tikai no cipariem.

Kas ir grupēšanas grupas un kā es tās varu izmantot?

Grupēšanas grupas, kas izveidotas ar iekavām (), ļauj jums izvilkt specifiskas daļas no atbilstā teksta. Mūsu testētājā jūs varat redzēt visas atbilstības, tostarp saglabātās grupas. Programmēšanas valodās jūs parasti varat piekļūt šīm saglabātajām daļām, indeksējot atbilstības rezultātu.

Kā es varu padarīt savus regex modeļus efektīvākus?

Lai uzlabotu regex efektivitāti: esiet specifiski ar rakstzīmju klasēm, izvairieties no nevajadzīgām grupēšanas grupām (izmantojiet negrupēšanas grupas (?:...), kad tas ir iespējams), ierobežojiet priekšskatījumu/aizskatu izmantošanu lielos tekstos un apsveriet iespēju izmantot specifiskākus modeļus, nevis plašus.

Kādas ir visbiežāk sastopamās regex kļūdas, kuras jāizvairās?

Biežākās kļūdas ietver: īpašu rakstzīmju neizvairīšanu, veidojot pārāk alkatīgus modeļus, aizmirstot nostiprināt modeļus (ar ^ un $), un rakstot pārāk sarežģītas izteiksmes, kuras ir grūti uzturēt.

Vai regex var apstrādāt ligzdotas struktūras, piemēram, HTML?

Regulārās izteiksmes nav labi piemērotas ligzdotu struktūru, piemēram, HTML vai XML, parsēšanai. Lai gan jūs varat izveidot regex modeļus vienkāršai HTML atbilstībai, parasti ir labāk izmantot veltītu HTML parsētāju sarežģītai HTML apstrādei.

Atsauces

  1. Friedl, J. E. F. (2006). Mastering Regular Expressions. O'Reilly Media.
  2. Goyvaerts, J., & Levithan, S. (2012). Regular Expressions Cookbook. O'Reilly Media.
  3. "Regulārā izteiksme." Vikipēdija, Vikipēdijas fonds, https://en.wikipedia.org/wiki/Regular_expression
  4. MDN Web Docs. "Regulārās izteiksmes." Mozilla, https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions
  5. RegExr: Mācieties, veidojiet un testējiet RegEx. https://regexr.com/

Izmēģiniet mūsu regex modeļu testētāju šodien, lai vienkāršotu savas teksta apstrādes uzdevumus, validētu ievades formātus un izvilktu nozīmīgus datus no strukturēta teksta. Neatkarīgi no tā, vai esat iesācējs, kurš apgūst regulāro izteiksmju pamatus, vai pieredzējis izstrādātājs, kurš strādā ar sarežģītu modeļu atbilstību, mūsu rīks piedāvā funkcijas, kas jums nepieciešamas, lai efektīvi izveidotu, testētu un uzlabotu savus regex modeļus.

Atsauksmes