§

Minta

Zászlók
§

Teszt karakterlánc

§

Találatok

0 találat

    Még nincsenek találatok — írj be egy mintát és egy teszt karakterláncot fent.

    §

    Csere mód

    Gyors referencia

    Karakterosztályok

    \d
    Bármely számjegy, egyenértékű a [0-9]-cel.
    \w
    Bármely szókarakter — betűk, számjegyek vagy aláhúzás.
    \s
    Bármely fehér karakter — szóköz, tabulátor, újsor stb.

    Horgonyok

    \b
    Nulla szélességű állítás egy szó határán.
    ^
    A bemenet kezdete (vagy minden sor kezdete, ha az m zászló be van állítva).
    $
    A bemenet vége (vagy minden sor vége, ha az m zászló be van állítva).

    Kvantorok

    *
    Nulla vagy több az előző tokenből, mohó.
    +
    Egy vagy több az előző tokenből, mohó.
    ?
    Nulla vagy egy az előző tokenből — egy megelőző kvantort lustává tesz.
    {n,m}
    n és m ismétlés között az előző tokenből.

    Csoportok

    (...)
    Rögzítő csoport — $1, $2, … néven érhető el cserékben.
    (?:...)
    Nem rögzítő csoport — csoportosítás slot foglalása nélkül.
    (?...)
    Név szerinti rögzítő csoport — $ néven érhető el cserékben.

    Körülnézés

    (?=...)
    Pozitív előretekintés — csak akkor illeszt, ha … követi.
    (?!...)
    Negatív előretekintés — csak akkor illeszt, ha NEM követi …
    (?<=...)
    Pozitív hátra tekintés — csak akkor illeszt, ha … előzi meg.
    (?
    Negatív hátra tekintés — csak akkor illeszt, ha NEM előzi meg …

    Escape-ek

    \\
    Literal visszaperjel karakter.
    \.
    Literal pont — escape-eld a meta karaktereket a szó szerinti illesztéshez.

    A JavaScript reguláris kifejezések a mindennapi fejlesztői munka alapját képezik az USA és az Egyesült Királyság technológiai környezetében: commit-üzenet konvenciók illesztése Husky pre-commit horgokban, SKU formátumok validálása Shopify témákban, Apache Kombinált naplóformátum elemzése AWS Athena lekérdezésben, vagy beviteli mezők szűrése React űrlapokban. Az Egyesült Királyság fintech csapatai, amelyek az Open Banking sort-kód formátumokat kényszerítik ki (`\d{2}-\d{2}-\d{2}`), ugyanazt az ECMAScript regex motort használják a Chromium böngészőkben. Ez a tesztelő minden mintát a böngészőbeli `RegExp` konstruktorral futtat, pontosan úgy, ahogy az éles környezetben is működik, rögzítő csoport vizsgálattal, zászló kapcsolókkal és élő kiemeléssel.

    Hogyan működik a regex a böngésződben?

    Minden JavaScript futási környezet rendelkezik natív reguláris kifejezés motorral — a new RegExp(pattern, flags) lefordítja a mintádat, majd a String.prototype.match, String.prototype.replace és RegExp.prototype.exec metódusok futtatják bármely bemeneti karakterlánc ellen. Ez a tesztelő ezt a motort öltözteti felhasználói felületbe, így szerkesztheted, futtathatod és vizsgálhatod a mintákat anélkül, hogy elhagynád a böngésződet.

    Hogyan működik a regex tesztelő?

    A folyamat néhány rövid lépésből áll, amelyek mind kliens oldalon futnak minden egyes billentyűleütéskor (150 ms-es fésüléssel, hogy a gépelés folyamatos maradjon):

    1. A minta törzse beolvasásra kerül a fenti beviteli mezőből (nincs vezető vagy záró / elválasztó — azok dekoratívak). A kiválasztott zászló gombok összefűzésre kerülnek egy zászló karakterláncba, mint gi vagy gimsuy.
    2. A new RegExp(patternBody, flags) lefordítja a mintát. Ha a motor SyntaxError-t dob (pl. nem illeszkedő zárójel vagy érvénytelen escape), az üzenet a teszt karakterlánc fölé kerül, és a találati lista törlődik. A fordítási hiba a tényleges err.message a V8 / SpiderMonkey / JavaScriptCore motorból, így megegyezik azzal, amit a DevTools-ban látnál.
    3. A találati listához a tesztelő mindig szintetikus globális zászlóval számol — így még ha kikapcsolod a g zászlót, a lista továbbra is minden találatot mutat. A szabványos nulla szélességű találat védelem (if (m.index === rx.lastIndex) rx.lastIndex++) megakadályozza a hurkot az üres karakterláncot illesztő mintákon. A Csere mód a valós zászló készletedet használja.
    4. Minden iteráció között a tesztelő ellenőrzi a performance.now() - start értéket, és megszakítja a futást, ha 50 ms eltelt. Ez véd a katasztrofális visszalépés ellen olyan bemeneteken, mint az (a+)+$ egy hosszú a sorozat ellen — a lap egyébként lefagyna. A védelem legjobb erőfeszítés: egy patológiai egyszeri találati minta továbbra is időt fogyaszthat egyetlen exec híváson belül.
    5. A teszt karakterlánc szegmensekre van bontva minden találat tartományánál, és a talált szegmensek <mark class="rx-match rx-cap-N"> elemekbe vannak csomagolva, ahol az N hat paletta színen megy keresztül, így a szomszédos találatok könnyen megkülönböztethetők. Minden találat számozott csoportjai és név szerinti csoportjai címkézett sorokként jelennek meg alatta.

    Miért ezt a regex tesztelőt használd?

    • Adatvédelem: minden minta, teszt karakterlánc és csere a böngésződben fut a beépített JavaScript RegExp motorral. Semmi sem hagyja el a lapot — fontos, ha a bemenet egy ügyféllog, kiszivárgott hitelesítőadat-minta, vagy bármi más, amit nem illesztenél be egy felhőalapú SaaS regex játszótérbe.
    • Őszinte verzió: a tesztelő pontosan azt a regex motort mutatja, amit a Node.js, Chrome, Safari, Firefox és minden böngészőalapú űrlap-validátor használ. Nincs Perl-verzió fordítási réteg, ami elrejtené a finom különbségeket — ami itt működik, az a kódodban is működik.
    • Rögzítő és név szerinti csoport hibakeresés: minden számozott csoport ($1, $2, …) és név szerinti csoport ($<year>) találatonként megjelenik, így építhetsz egy elemzőt és elolvashatod a slotokat találgatás nélkül. A Csere mód lehetővé teszi a csoportok szabad keverését.
    • Katasztrofális visszalépés elleni védelem: egy 50 ms-os plafon a számbavételen megszakítja a patológiai mintákat, mint (a+)+$, mielőtt lefagyasztanák a lapot. Magyarázó hibaüzenetet látsz egy lefagyott böngésző helyett, és az oldal azonnal helyreáll.

    Mik a regex tesztelő gyakori felhasználásai?

    A reguláris kifejezések a webfejlesztés, biztonság és adatmunka minden területén felbukkannak — ez a tesztelő a leggyakoribb esetekre összpontosít:

    • Űrlap validálás: prototipizálj egy e-mail, telefonszám vagy irányítószám mintát, illessz be minta bemeneteket a teszt karakterláncba, és erősítsd meg, hogy minden pozitív eset illeszkedik és minden negatív eset nem, mielőtt a mintát éles kódba szállítod.
    • Naplóelemzés: illessz be egy darab NGINX, alkalmazás vagy audit napló kimenetet, írj egy mintát név szerinti csoportokkal a számodra fontos részekhez, és olvasd el a rögzített slotokat találatonként, hogy megerősítsd az elemző helyességét.
    • Refaktoráló keresés és csere: használd a Csere módot azonosítók átírására egy kódrészleten belül.

    Hogy néz ki egy regex példa?

    Vegyük a (\d{4})-(\d{2})-(\d{2}) mintát a g zászlóval, futtatva a release 2025-11-15, prerelease 2026-05-25 teszt karakterlánc ellen. A motor két találatot talál. Az első találat 2025-11-15 az 1. csoport = 2025, 2. csoport = 11, 3. csoport = 15. A második találat 2026-05-25 ugyanazzal a csoport alakzattal. Csere módban a $3/$2/$1 csere sablon mindkét dátumot 15/11/2025 és 25/05/2026 értékre írja át — egy egy mintás ISO-DMY átalakítás, amit vizuálisan ellenőrizhetsz, mielőtt beillesztenéd a mintát egy szkriptbe.

    Használd ezt a tesztelőt gyors útként bármilyen regex munkához — minták építéséhez, hibakereséséhez vagy átírásához. Minden helyben fut; semmi sem kerül naplózásra; a regex motor az, amit a böngésződ szállít, így a viselkedés megegyezik azzal, amit az éles kód futás közben látni fog.