Regex-tesztelő
A reguláris kifejezések mintaegyeztetési szöveget az érvényesítéshez, kereséshez és cseréhez és naplóelemzéshez. Tesztelje a mintákat élő kiemeléssel, mielőtt az éles kódba kerülne — elkerülje a katasztrofális visszalépési meglepetéseket a felhasználói bevitellel.
Minta
Flagek
Tesztszöveg
Kimenet
[0] Hello
[6] world
[12] 123
Reguláris kifejezés tesztelése
1. Írd be a reguláris kifejezési mintát (külső perjelek nélkül vagy jelzőkkel).
2. Globális jelzők beállítása: gszenzitív kis- és nagybetűk: többsoros.
3. Példaszöveg beillesztése a tesztkarakterlánc területére.
4. Ellenőrizd az egyezéseket, rögzítse a csoportokat, és cserélje ki az előnézetet, ha elérhető.
Regex példák
E-mailben érvényesítés
^[\\\\w.-]+@[\\\\w.-]+\\\\.\\\\w+$ elkapja az egyszerű e-maileket — nem tökéletes az RFC-hez, de hasznos az űrlapokhoz.
ISO-dátumok kibontása
\\\\d{4}-\\\\d{4}-\\\\d{2}-\\\\d 2024-03-15 naplósorokban a grep cseréjéhez.
Slugify helper
Cserélje ki a [^a-z0-9]+ jelet kötőjelre a címsorból származó URL-címhez.
Mikor használd ezt az eszközt
• Strukturált karakterláncok (telefonszám, irányítószám) érvényesítésekor.
• Félig strukturált naplók elemzésekor.
• A rögzítési csoportok megtanulásakor és az előretekintéskor.
Mikor válassz mást
• HTML vagy JSON elemzésekor — használjon megfelelő értelmezőket.
• Amikor a regex olvashatatlanná válik — kódlogikára bontva.
• Szerver időtúllépési kockázata. és korlátozza a hosszt.
ReDoS-tudatosság
Beágyazott kvantorok, mint például a (a+) user regex használata elkerülése a CPUe-n vagy időtúllépések.
Érvényesítés vs kivonat
Rögzített minta A ^...$ a teljes karakterláncot érvényesíti; a horgony nélküli részkarakterláncot bárhol megtalálja.
Csere a szerkesztőkben
A VS kód hasonló JS regex-et használ a find-replace mezőben — tesztelje ide, majd illessze be a mintát.
Gyakori kérdések
Melyik reguláris kifejezés?
JavaScript RegExp — PCRE eltérések léteznek (a mögöttes támogatás a motorverziótól függően változik).
Globális jelző g?
Minden egyezést megkeres, nem csak először — testStateful a lastIndex-el JS-ben.
Kilép a speciális karakterekből?
. * +? [ ] ( ) { } | \\\\ ^ $ kihagyásra van szükség a szó szerinti egyezéshez.
Csoportok rögzítése?
A zárójelek ( ) számozott csoportokat hoznak létre, amelyek elérhetők a $1 helyére $2.
Helyi?
Igen.
Többsoros ^ $?
m jelző a ^ $ egyezési sorhatárokat nem egész karakterláncot eredményezi.