Testujte regulárne výrazy s okamžitým zvýraznením zhody, validáciou vzorov a vysvetleniami bežných symbolov regex. Uložte a znovu použite svoje často používané vzory s vlastnými štítkami.
Zadajte vzor a testovací text na zobrazenie výsledkov
Zadajte vzor a testovací text na zobrazenie výsledkov
Žiadne uložené vzory zatiaľ
.
Zhoduje sa s akýmkoľvek znakom okrem nového riadku\d
Zhoduje sa s akýmkoľvek číslicou (0-9)\D
Zhoduje sa s akýmkoľvek nečíslom\w
Zhoduje sa s akýmkoľvek znakom slova (a-z, A-Z, 0-9, _)\W
Zhoduje sa s akýmkoľvek neznakom slova\s
Zhoduje sa s akýmkoľvek znakom prázdneho miesta\S
Zhoduje sa s akýmkoľvek neznakom prázdneho miesta^
Zhoduje sa so začiatkom riadku$
Zhoduje sa s koncom riadku*
Zhoduje sa s 0 alebo viac predchádzajúcich znakov+
Zhoduje sa s 1 alebo viac predchádzajúcich znakov?
Zhoduje sa s 0 alebo 1 predchádzajúcim znakom{n}
Zhoduje sa presne s n predchádzajúcimi znakmi{n,}
Zhoduje sa s aspoň n predchádzajúcimi znakmi{n,m}
Zhoduje sa s medzi n a m predchádzajúcimi znakmi[abc]
Zhoduje sa s ktorýmkoľvek z znakov v zátvorkách[^abc]
Zhoduje sa s akýmkoľvek znakom, ktorý nie je v zátvorkách(abc)
Zoskupuje viacero tokenov a zachytáva zhodua|b
Zhoduje sa buď s a alebo b\b
Zhoduje sa s pozíciou hranice slovaTester vzorov regulárnych výrazov (regex) je nevyhnutný nástroj pre vývojárov, analytikov údajov a každého, kto pracuje s textovým spracovaním. Tento komplexný validátor vzorov regex umožňuje vytvárať, testovať a zdokonaľovať regulárne výrazy v reálnom čase, pričom poskytuje okamžitú vizuálnu spätnú väzbu o zhode vzorov. Či už validujete e-mailové adresy, parsujete protokolové súbory alebo extrahujete konkrétne údaje z textu, náš tester regexu urýchľuje proces vývoja a ladenia a robí ho intuitívnejším.
Regulárne výrazy sú mocné sekvencie na zhodu vzorov, ktoré umožňujú sofistikované vyhľadávanie textu, validáciu a manipuláciu. Ich syntax však môže byť zložitá a ťažko zvládnuteľná. Tento tester vzorov regexu zjednodušuje proces tým, že zvýrazňuje zhody pri písaní, validuje syntax vzoru a umožňuje vám ukladať často používané vzory pre budúce použitie.
Používanie nášho validátora vzorov regex je jednoduché a intuitívne. Postupujte podľa týchto krokov, aby ste začali:
Zadajte vzor regulárneho výrazu: Zadajte svoj regex vzor do určeného vstupného poľa. Nástroj validuje váš vzor v reálnom čase a upozorňuje vás na akékoľvek syntaktické chyby.
Vyberte vlajky regexu: Vyberte vhodné vlajky pre svoj vzor:
g
(Globálne): Nájdite všetky zhody namiesto zastavenia po prvej zhodei
(Bez ohľadu na veľkosť písmen): Urobte vzor bez ohľadu na veľkosť písmenm
(Viacriadkový): Urobte, aby ^
a $
zodpovedali začiatku/koncu každého riadkuZadajte testovací text: Zadajte text, ktorý chcete testovať voči svojmu vzoru, do oblasti testovacieho textu.
Zobrazte výsledky v reálnom čase: Ako píšete, nástroj automaticky:
Uložte užitočné vzory: Pre vzory, ktoré používate často:
Kopírovanie výsledkov: Použite tlačidlo "Kopírovať zhody" na skopírovanie všetkých zhodných textov do schránky na použitie v iných aplikáciách.
Rozhranie je rozdelené do dvoch hlavných panelov: vstupný panel, kde zadávate svoj vzor a testovací text, a panel výsledkov, ktorý zobrazuje zhody a informácie o vzore.
Regulárne výrazy používajú špeciálne znaky a sekvencie na definovanie vyhľadávacích vzorov. Tu je sprievodca základnými regex symbolmi podporovanými naším nástrojom:
Symbol | Popis | Príklad | Zhody |
---|---|---|---|
. | Zhoduje sa s akýmkoľvek znakom okrem nového riadku | a.c | "abc", "adc", "a1c" atď. |
\d | Zhoduje sa s akýmkoľvek číslicou (0-9) | \d{3} | "123", "456", "789" atď. |
\D | Zhoduje sa s akýmkoľvek nečíslom | \D+ | "abc", "xyz" atď. |
\w | Zhoduje sa s akýmkoľvek znakom slova (a-z, A-Z, 0-9, _) | \w+ | "abc123", "test_123" atď. |
\W | Zhoduje sa s akýmkoľvek neznakom slova | \W+ | "!@#", " + " atď. |
\s | Zhoduje sa s akýmkoľvek znakom bieleho miesta | a\sb | "a b", "a\tb" atď. |
\S | Zhoduje sa s akýmkoľvek neznakom bieleho miesta | \S+ | "abc", "123" atď. |
Symbol | Popis | Príklad | Zhody |
---|---|---|---|
^ | Zhoduje sa so začiatkom riadka | ^abc | "abc" na začiatku riadka |
$ | Zhoduje sa s koncom riadka | abc$ | "abc" na konci riadka |
\b | Zhoduje sa s hranicou slova | \bword\b | "word" ako celé slovo |
Symbol | Popis | Príklad | Zhody |
---|---|---|---|
* | Zhoduje sa s 0 alebo viacerými predchádzajúcimi znakmi | a*b | "b", "ab", "aab" atď. |
+ | Zhoduje sa s 1 alebo viacerými predchádzajúcimi znakmi | a+b | "ab", "aab", "aaab" atď. |
? | Zhoduje sa s 0 alebo 1 predchádzajúcim znakom | colou?r | "color", "colour" |
{n} | Zhoduje sa presne s n predchádzajúcimi znakmi | a{3} | "aaa" |
{n,} | Zhoduje sa s aspoň n predchádzajúcimi znakmi | a{2,} | "aa", "aaa", "aaaa" atď. |
{n,m} | Zhoduje sa medzi n a m predchádzajúcimi znakmi | a{2,4} | "aa", "aaa", "aaaa" |
Symbol | Popis | Príklad | Zhody |
---|---|---|---|
[abc] | Zhoduje sa s ktorýmkoľvek znakom v zátvorkách | [aeiou] | "a", "e", "i", "o", "u" |
[^abc] | Zhoduje sa s ktorýmkoľvek znakom, ktorý nie je v zátvorkách | [^aeiou] | Akýkoľvek znak okrem "a", "e", "i", "o", "u" |
[a-z] | Zhoduje sa s ktorýmkoľvek znakom v rozsahu | [a-z] | Akékoľvek malé písmeno |
Symbol | Popis | Príklad | Zhody |
---|---|---|---|
(abc) | Skupinu viacerých tokenov a zachytáva zhodu | (abc)+ | "abc", "abcabc" atď. |
a|b | Zhoduje sa buď s a alebo b | cat|dog | "cat", "dog" |
Akonáhle zvládnete základy, môžete vytvárať sofistikovanejšie vzory na riešenie zložitých textových spracovateľských výziev:
1^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
2
Tento vzor validuje e-mailové adresy tým, že zabezpečuje, aby dodržiavali štandardný formát: používateľské meno@doména.tld.
1^(https?:\/\/)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)$
2
Tento vzor validuje URL, vrátane tých s alebo bez protokolu http/https.
1^\(?(\d{3})\)?[- ]?(\d{3})[- ]?(\d{4})$
2
Tento vzor zhoduje sa s telefónnymi číslami v USA v rôznych formátoch: (123) 456-7890, 123-456-7890 alebo 1234567890.
1^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$
2
Tento vzor validuje dátumy vo formáte RRRR-MM-DD, s základnou validáciou pre rozsahy mesiacov a dní.
Predpoklady a za predpokladmi umožňujú zhodovať vzory iba v prípade, že sú nasledované alebo predchádzajú iným vzorom:
a(?=b)
zhoduje sa s "a" iba ak je nasledované "b"a(?!b)
zhoduje sa s "a" iba ak nie je nasledované "b"(?<=a)b
zhoduje sa s "b" iba ak je predchádzané "a"(?<!a)b
zhoduje sa s "b" iba ak nie je predchádzané "a"Náš tester regexu podporuje rôzne vlajky, ktoré upravujú, ako sa vzory zhodujú:
^
a $
zodpovedali začiatku/koncu každého riadkuRegulárne výrazy majú množstvo praktických aplikácií v rôznych oblastiach:
Validácia formulárov: Zabezpečte, aby vstupy používateľov zodpovedali požadovaným formátom:
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{8,}$
^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$
Parsovanie HTML: Extrahujte konkrétne prvky alebo atribúty:
<img[^>]+src="([^">]+)"
<a[^>]+href="([^">]+)"
Analýza protokolových súborov: Extrahujte informácie z protokolových záznamov:
\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b
\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}
ERROR: .*
Parsovanie CSV: Spracovanie hodnôt oddelených čiarkou s potenciálnymi citovanými poliami:
(?:^|,)(?:"([^"]*(?:""[^"]*)*)"|([^,]*))
Nájdite a nahraďte: Identifikujte vzory na nahradenie:
<[^>]*>
(\d{3})(\d{3})(\d{4})
→ ($1) $2-$3
Extrahovanie obsahu: Vytiahnite konkrétne informácie z neštruktúrovaného textu:
\b(?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s+\d{1,2},\s+\d{4}\b
\$\d+(?:\.\d{2})?
Syntax zvýraznenie: Identifikujte jazykové konštrukcie:
\b(?:var|let|const)\s+([a-zA-Z_$][\w$]*)\b
function\s+([a-zA-Z_$][\w$]*)\s*\(
Refaktoring kódu: Nájdite vzory, ktoré potrebujú aktualizáciu:
\.oldMethod\(
eval\(
Náš tester vzorov regexu obsahuje systém správy vzorov, ktorý vám umožňuje ukladať a znovu používať často používané výrazy:
Zvážte uloženie vzorov, ktoré:
Pri ukladaní vzorov používajte popisné názvy, ktoré:
Organizujte svoje uložené vzory podľa:
Aj keď náš nástroj priamo nepodporuje zdieľanie vzorov medzi používateľmi, môžete:
Aj skúsení vývojári sa stretávajú s výzvami pri regulárnych výrazoch. Tu sú riešenia bežných problémov:
Ak váš vzor vykazuje validačnú chybu:
Ak je váš regex pomalý alebo spôsobuje oneskorenie prehliadača:
(a+)+
)Ak váš vzor zhoduje sa s nechceným textom:
^
a $
) na zhodu celých reťazcov\b
) tam, kde je to vhodnéAk váš vzor nezodpovedá očakávanému textu:
i
)Aj keď je regex mocný, nie je vždy najlepším riešením pre každú úlohu spracovania textu:
Pre jednoduché textové operácie sú natívne metódy reťazca často jasnejšie a efektívnejšie:
String.indexOf()
na vyhľadávanie podreťazcovString.startsWith()
a String.endsWith()
na kontrolu hraníc reťazcaString.split()
na základnú tokenizáciuPre štruktúrované formáty údajov sú venované analyzátory robustnejšie:
Pre pochopenie významu textu skôr než len vzorov:
Zvážte alternatívy k regexu, keď:
Regulárny výraz (regex) je sekvencia znakov, ktorá definuje vyhľadávací vzor. Tieto vzory sa dajú použiť na vyhľadávanie reťazcov, zhodu a operácie manipulácie s textom.
Tester vzorov regex vám pomáha vyvíjať a ladit regulárne výrazy tým, že poskytuje okamžitú vizuálnu spätnú väzbu o zhode, validuje syntax vzoru a umožňuje vám experimentovať s rôznymi vzormi a vlajkami bez toho, aby ste ich museli implementovať v kóde.
Aby ste zhodovali doslovné špeciálne znaky, ktoré majú normálne špeciálny význam v regexe, musíte ich escapeovať spätným lomítkom. Napríklad, aby ste zhodovali doslovnú bodku, použite \.
namiesto len .
.
.*
a .*?
v regex vzore?.*
je chamtivý kvantifikátor, ktorý zhoduje sa s čo najviac znakmi, zatiaľ čo .*?
je lenivý (nechamtivý) kvantifikátor, ktorý zhoduje sa s čo najmenším počtom znakov. Toto rozlíšenie je dôležité, keď chcete nájsť najkratšiu zhodu namiesto najdlhšej.
Aj keď je základná syntax regexu podobná v mnohých jazykoch, existujú jemné rozdiely v implementácii. Náš tester používa regex engine JavaScriptu, ktorý je kompatibilný s mnohými webovými jazykmi, ale môže mať rozdiely od regexu v jazykoch ako Python, Java alebo Perl.
Aby ste validovali, že celý reťazec zodpovedá vzoru, použite ukotvenie ^
na začiatku a $
na konci vášho regexu. Napríklad, ^[0-9]+$
bude zodpovedať iba reťazcom, ktoré sa skladajú výlučne z číslic.
Zachytávacie skupiny, vytvorené pomocou zátvoriek ()
, vám umožňujú extrahovať konkrétne časti zhody textu. V našom testeri môžete vidieť všetky zhody, vrátane zachytených skupín. V programovacích jazykoch môžete zvyčajne pristupovať k týmto zachyteniam prostredníctvom indexovania výsledku zhody.
Aby ste zlepšili efektívnosť regexu: buďte špecifickí s triedami znakov, vyhnite sa zbytočným zachytávacím skupinám (použite nezachytávacie skupiny (?:...)
, keď je to možné), obmedzte používanie predpokladov/za predpokladmi, a vyhnite sa katastrofálnym spätným sledovaniam vzorov, ako sú vnorené kvantifikátory.
Bežné chyby zahŕňajú: nezapísanie špeciálnych znakov, vytváranie vzorov, ktoré sú príliš chamtivé, zabúdanie na ukotvenie vzorov (s ^
a $
), a písanie príliš zložitých výrazov, ktoré sú ťažko udržiavateľné.
Regulárne výrazy nie sú dobre prispôsobené na parsovanie vnorených štruktúr, ako je HTML alebo XML. Aj keď môžete vytvoriť regex vzory na jednoduché zhody HTML, je zvyčajne lepšie použiť venovaný HTML analyzátor na komplexné spracovanie HTML.
Vyskúšajte náš tester vzorov regexu ešte dnes, aby ste zjednodušili svoje úlohy spracovania textu, validovali formáty vstupu a extrahovali významné údaje z neštruktúrovaného textu. Či už ste začiatočník, ktorý sa učí základy regulárnych výrazov, alebo skúsený vývojár pracujúci na komplexnom zhodovaní vzorov, náš nástroj poskytuje funkcie, ktoré potrebujete na efektívne vytváranie, testovanie a zdokonaľovanie vašich regex vzorov.
Objavte ďalšie nástroje, ktoré by mohli byť užitočné pre vašu pracovnú postupnosť