§

Vzor

Příznaky
§

Testovací řetězec

§

Shody

0 shod

    Zatím žádné shody — napište vzor a testovací řetězec výše.

    §

    Režim nahrazení

    Rychlá reference

    Třídy znaků

    \d
    Libovolná číslice, ekvivalent [0-9].
    \w
    Libovolný znak slova — písmena, číslice nebo podtržítko.
    \s
    Libovolný bílý znak — mezera, tabulátor, nový řádek atd.

    Kotvy

    \b
    Nulově široká aserce na hranici slova.
    ^
    Začátek vstupu (nebo každého řádku při nastaveném flagu m).
    $
    Konec vstupu (nebo každého řádku při nastaveném flagu m).

    Kvantifikátory

    *
    Nula nebo více předchozího tokenu, chamtivě.
    +
    Jeden nebo více předchozího tokenu, chamtivě.
    ?
    Nula nebo jeden z předchozího tokenu — také činí předchozí kvantifikátor líným.
    {n,m}
    Mezi n a m opakováními předchozího tokenu.

    Skupiny

    (...)
    Zachytávací skupina — vystavena jako $1, $2, … v nahrazeních.
    (?:...)
    Nezachytávací skupina — seskupuje bez spotřebování slotu.
    (?...)
    Pojmenovaná zachytávací skupina — vystavena jako $ v nahrazeních.

    Lookaround

    (?=...)
    Pozitivní lookahead — shoda pouze pokud následuje …
    (?!...)
    Negativní lookahead — shoda pouze pokud NEnásleduje …
    (?<=...)
    Pozitivní lookbehind — shoda pouze pokud předchází …
    (?
    Negativní lookbehind — shoda pouze pokud NEpředchází …

    Únikové sekvence

    \\
    Literální zpětné lomítko.
    \.
    Literální tečka — escapujte jakýkoli metaznak pro doslovnou shodu.

    JavaScriptové regulární výrazy pohání každodenní práci vývojářů: validace formátů commit zpráv, kontrola SKU formátů, parsování Apache logů nebo sanitace vstupních polí v React formulářích. Tento tester spouští každý vzor proti vestavěnému konstruktoru `RegExp` prohlížeče přesně jako v produkci, s inspekcí zachytávacích skupin, přepínači flagů a živým zvýrazněním.

    Jak funguje regex ve vašem prohlížeči?

    Každý JavaScript runtime obsahuje nativní engine regulárních výrazů — new RegExp(pattern, flags) zkompiluje váš vzor, pak metody jako String.prototype.match, String.prototype.replace a RegExp.prototype.exec jej spouští proti libovolnému vstupnímu řetězci. Tento tester obaluje tento engine do UI, takže můžete upravovat, spouštět a zkoumat vzory bez opuštění prohlížeče. Nic, co napíšete — vzor, příznaky, testovací řetězec nebo nahrazení — není odesláno po síti.

    Jak tester regulárních výrazů funguje?

    Pipeline je několik krátkých kroků, všechny běží na straně klienta při každém stisku klávesy (debounce na 150 ms pro plynulé psaní):

    1. Tělo vzoru je přečteno ze vstupu výše (bez úvodních/závěrečných / oddělovačů — jsou dekorativní). Vybrané přepínače příznaků jsou zřetězeny do řetězce příznaků jako gi nebo gimsuy.
    2. new RegExp(patternBody, flags) zkompiluje vzor. Pokud engine vyhodí SyntaxError (např. nespárovaná závorka nebo neplatný escape), zpráva je zobrazena nad testovacím řetězcem a seznam shod je vymazán. Chyba kompilace je skutečná err.message z V8 / SpiderMonkey / JavaScriptCore, takže odpovídá tomu, co byste viděli v DevTools.
    3. Pro seznam shod tester vždy enumeruje se syntetickým globálním flagem — takže i když vypnete g, seznam stále ukazuje všechny shody. Standardní ochrana proti nulově širokým shodám (if (m.index === rx.lastIndex) rx.lastIndex++) zabraňuje zacyklení na vzorech, které odpovídají prázdnému řetězci. Režim Nahrazení respektuje vaši skutečnou sadu flagů, takže $& se chová stejně jako String.prototype.replace.
    4. Mezi každou iterací tester kontroluje performance.now() - start a přeruší po 50 ms. To chrání proti katastrofickému backtrackingu na vstupech jako (a+)+$ proti dlouhému řetězci a — záložka by jinak zamrzla. Ochrana je nejlepším úsilím: patologický jediný match vzor může stále spotřebovat čas uvnitř jednoho volání exec. Pokud se to stane, obnovte záložku a přepište vzor s nechamtivým kvantifikátorem.
    5. Testovací řetězec je rozdělen na segmenty podle rozsahu každé shody a odpovídající segmenty jsou zabaleny do <mark class="rx-match rx-cap-N"> elementů, kde N cyklí přes šest paletových barev, takže sousední shody lze snadno rozlišit na první pohled. Číslované skupiny (m[1], m[2], …) a pojmenované skupiny (m.groups) jsou zobrazeny jako popsané řádky pod nimi; pokud je nastaven flag d, jsou zobrazeny také indexy [start, end] pro skupinu.

    Proč použít tento tester regexu?

    • Soukromí: každý vzor, testovací řetězec a nahrazení běží ve vašem prohlížeči pomocí vestavěného JavaScript RegExp enginu. Nic neopouští záložku — důležité, když je vstupem zákaznický log, vzor uniklých přihlašovacích údajů nebo cokoli, co byste nevložili do hostovaného SaaS playgroundu.
    • Upřímný jazyk: tester vystavuje přesný regex engine, který používá Node.js, Chrome, Safari, Firefox a každý validátor formulářů v prohlížeči. Neexistuje žádná překladová vrstva Perl-jazyka skrývající jemné rozdíly — co funguje zde, funguje ve vašem kódu.
    • Ladění zachytávacích a pojmenovaných skupin: každá číslovaná skupina ($1, $2, …) a pojmenovaná skupina ($<year>) je zobrazena pro každou shodu, takže můžete sestavit parser a číst sloty zpět bez hádání. Režim Nahrazení umožňuje volně míchat skupiny — $2-$1 prohodí první dva sloty, $<name> vloží pojmenovaný slot a $& zopakuje celou shodu.
    • Ochrana proti katastrofickému backtrackingu: 50 ms strop na enumeraci přeruší patologické vzory jako (a+)+$ dříve, než zamrazí záložku. Místo zaseknutého prohlížeče uvidíte vysvětlující chybu a stránka se okamžitě zotaví.

    Jaká jsou běžná použití testeru regexu?

    Regulární výrazy se objevují v celém webovém vývoji, bezpečnosti a datové práci — tento tester cílí na nejčastější případy použití:

    • Validace formulářů: prototypujte vzor pro e-mail, telefonní číslo nebo PSČ, vložte vzorové vstupy do testovacího řetězce a potvrďte, že všechny pozitivní případy odpovídají a všechny negativní ne, než vzor nasadíte do produkčního kódu.
    • Stahování logů: vložte kus NGINX, aplikačního nebo auditního logu, napište vzor s pojmenovanými skupinami pro části, které vás zajímají ((?<ip>…) (?<path>…)), a přečtěte zachycené sloty pro každou shodu pro potvrzení správnosti parseru.
    • Refaktorovat hledání a nahrazení: použijte režim Nahrazení pro přepsání identifikátorů — (\w+)\.set(\w+)\($1.$2 = změní volání getterů na přiřazení vlastností a živý náhled ukáže výsledek před potvrzením.

    Jak vypadá příklad regulárního výrazu?

    Vezměte vzor (\d{4})-(\d{2})-(\d{2}) s flagem g spuštěný proti testovacímu řetězci release 2025-11-15, prerelease 2026-05-25. Engine najde dvě shody. První shoda je 2025-11-15 se skupinou 1 = 2025, skupinou 2 = 11, skupinou 3 = 15. Druhá shoda je 2026-05-25 se stejným tvarem skupin. V režimu Nahrazení šablona $3/$2/$1 přepíše obě data na 15/11/2025 a 25/05/2026.

    Používejte tento tester jako rychlou cestu pro jakoukoli regex práci — vytváření, ladění nebo přepisování vzorů. Vše běží lokálně; nic není protokolováno; regex engine je ten, který váš prohlížeč dodává, takže chování odpovídá tomu, co produkční kód uvidí za běhu.