Tester regexov

Otestujte regulárne výrazy na text a zobrazte všetky zvýraznené zhody. Nevyhnutné pre vývojárov, ktorí pracujú s porovnávaním vzorov, overovaním údajov alebo spracovaním textu. Ladenie a spresňovanie regexových vzorov v reálnom čase s vizuálnou spätnou väzbou, ktorá presne ukazuje, čomu sa váš výraz zhoduje.

Často kladené otázky

Regulárny výraz je postupnosť znakov, ktorá definuje vyhľadávací vzor. Regex sa používa na vyhľadávanie, porovnávanie a manipuláciu s textom na základe vzorov a nie presných reťazcov. Je neuveriteľne výkonný pri úlohách, ako je overovanie e-mailových adries, extrahovanie údajov z textu, operácie nájdi a nahraď a analyzovanie súborov protokolov.

Do poľa pre vzor zadajte regex vzor a do textovej oblasti vložte testovací text. Nástroj zvýrazní všetky zhody v reálnom čase a ukáže vám, čo presne váš vzor zachytáva. Ak sa nič nezvýrazní, váš vzor sa nezhoduje. Pomocou tejto vizuálnej spätnej väzby môžete svoj vzor vylepšovať, kým sa nezhoduje presne s tým, čo potrebujete.

Najbežnejšie vlajky sú: (globálny) nájde všetky zhody namiesto prvej, "i" (nerozlišuje veľkosť písmen) ignoruje rozdiely medzi veľkými a malými písmenami, "m" (viacriadkový) spôsobí, že ^ a $ sa budú zhodovať so začiatkami/koncami riadkov namiesto začiatkov/koncov reťazcov, a "s" (dotall) spôsobí, že . sa bude zhodovať so znakmi nového riadku. Kombinujte príznaky ako 'gi' pre globálne porovnávanie bez rozlišovania veľkých a malých písmen.

Pre e-mail: skúste /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/ pre základné overenie. Pre adresy URL: /https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)/ works for most cases. Upozorňujeme, že dokonalá validácia e-mailu/URL je mimoriadne zložitá - tieto vzory zvládajú väčšinu bežných prípadov.

Bodka (.) zodpovedá akémukoľvek znaku. Hviezdička (*) znamená "nula alebo viac krát", zatiaľ čo plus (+) znamená "jeden alebo viac krát". Takže .* zodpovedá nula alebo viac ľubovoľným znakom (vrátane nezodpovedajúceho ničomu), zatiaľ čo .+ vyžaduje aspoň jeden znak, aby zodpovedal. Napríklad 'a.*b' zodpovedá 'ab' alebo 'a123b', ale 'a.+b' zodpovedá len 'a123b'.

V predvolenom nastavení sú kvantifikátory ako *, + a {n,m} chamtivé - priraďujú sa, ako sa len dá. Ak za kvantifikátor pridáte otáznik (?), kvantifikátor nebude chamtivý (lenivý) a bude sa zhodovať čo najmenej. Napríklad v texte "<div>ahoj</div><div>svet</div>" /<div>.*<\/div>/ zodpovedá celému reťazcu (greedy), zatiaľ čo /<div>.*?<\/div>/ zodpovedá každému tagu zvlášť (non-greedy).

Skupiny zachytávania používajú zátvorky () na vyčlenenie konkrétnych častí zhody. Napríklad /user-(\d+)/ zachytí číselné ID používateľa. K zachytenej hodnote možno pristupovať vo väčšine jazykov pomocou skupín zhody. Pre nezachytávajúce skupiny použite (?:...), keď potrebujete zoskupenie pre kvantifikátory, ale nechcete zachytiť hodnotu.

Do oblasti testovacieho reťazca vložte vzorové záznamy denníka a vytvorte vzory na extrahovanie časových značiek, adries IP, stavových kódov alebo chybových správ. Vizuálne zvýraznenie presne ukazuje, čo sa zhoduje, čo vám pomôže spresniť vzory pred ich nasadením do nástrojov na analýzu protokolov, ako sú Logstash, Splunk alebo vlastné skripty.

Vzory lookheads (?=...) a lookbehinds (?<=...) potvrdzujú, že vzor existuje pred alebo za bez toho, aby bol zahrnutý do zhody. Napríklad /\d+(?= dolárov)/ zodpovedá číslam, za ktorými nasleduje ' dolárov', ale zachytáva len číslo. Záporné lookaheads (?!...) a záporné lookbehinds (?<!...) tvrdia, že vzor NEexistuje.

Áno! Otestujte regexové vzory na overovanie formulárov, ako sú telefónne čísla, poštové smerovacie čísla, kreditné karty alebo vlastné formáty. Vizuálna spätná väzba vám pomôže uistiť sa, že vaše validačné vzory správne prijímajú platné vstupy a odmietajú neplatné vstupy ešte pred ich implementáciou do aplikácie.