Regex tester

Testujte regulární výrazy JavaScriptu na ukázkovém textu přímo ve vašem prohlížeči.

Vzor (Pattern)
Příznaky
Testovaný řetězec
Zvýrazněné shody
Zadejte vzor pro otestování.

Váš vzor a text se testují přímo v prohlížeči. Na servery BroBroGo se nic nenahrává.

Časté dotazy

Je bezpečné sem vložit můj text?

Ano. Vyhodnocování regulárního výrazu probíhá kompletně ve vašem prohlížeči – do služby BroBroGo se nic neodesílá.

Co znamenají příznaky g/i/m/s?

Příznak g vyhledá všechny shody namísto pouze první. Příznak i ignoruje velikost písmen. Příznak m způsobí, že ^ a $ odpovídají začátku a konci každého řádku namísto celého řetězce. Příznak s umožňuje, aby tečka (.) odpovídala i znakům konce řádku.

Proč se zobrazilo upozornění, že vyhodnocení vzoru trvá příliš dlouho?

Některé vzory mohou způsobit tzv. katastrofální zpětné vyhledávání (catastrophic backtracking) – engine zkouší exponenciální množství kombinací, než vyhledávání vzdá, což může způsobit zamrznutí záložky prohlížeče. Tento nástroj v takovém případě vyhledávání po 2 sekundách zruší, takže samotná stránka nezamrzne. Zkuste zjednodušit vnořená opakování typu (a+)+.

Testování regulárních výrazů v JavaScriptu

Regulární výrazy jsou nástrojem pro vyhledávání, validaci a manipulaci s textem na základě definovaných vzorů. Tento online nástroj umožňuje testovat regulární výrazy JavaScriptu na libovolném ukázkovém textu přímo ve webovém prohlížeči. Nástroj okamžitě zvýrazňuje nalezené shody a zachycené skupiny, což usnadňuje analýzu chování zvoleného vzoru při různých vstupech.

Vyhodnocování zadaného vzoru a textu probíhá lokálně v prohlížeči uživatele. Na servery BroBroGo se nic nenahrává, což zajišťuje, že zpracovávaná data neopouštějí vaše zařízení.


Vstupy nástroje

Pro spuštění testu je vyžadováno zadání dvou hlavních parametrů a volitelná konfigurace vyhledávacích příznaků:

  • Vzor (Pattern): Samotný regulární výraz, který definuje vyhledávací masku. Výchozím příkladem v rozhraní je vzor \d+.
  • Příznaky: Volby ovlivňující chování vyhledávacího enginu JavaScriptu:
    • g (Globální): Vyhledá všechny shody v celém textu namísto ukončení práce po nalezení první shody.
    • i (Ignorovat velikost písmen): Nerozlišuje mezi velkými a malými písmeny.
    • m (Víceřádkový režim): Upravuje chování meta-znaků ^ a $, které nově odpovídají začátku a konci každého jednotlivého řádku namísto začátku a konce celého textového řetězce.
    • s (Tečka odpovídá novému řádku): Umožňuje meta-znaku tečky (.) odpovídat i znakům konce řádku.
  • Testovaný řetězec: Libovolný text, na kterém chcete zadaný vzor otestovat. Výchozím textem v rozhraní je "Vložte nebo napište text, na kterém chcete vzor otestovat".

Výstupy a interpretace výsledků

Po zadání vzoru a testovacího textu nástroj okamžitě generuje vizuální a strukturované výsledky:

  • Zvýrazněné shody: Testovaný řetězec se zobrazí s barevným zvýrazněním všech nalezených shod a jednotlivých zachycených skupin.
  • Shody: Strukturovaný seznam všech nalezených výsledků. Pokud vzor obsahuje závorky definující zachytávací skupiny, zobrazí se u každé shody také položka Skupina {n} s konkrétním zachyceným podřetězcem.
  • Shody: {count}: Ukazatel celkového počtu nalezených shod v textu.
  • Znaky: Celkový počet znaků v testovaném řetězci.

Pravidla zpracování a limitní stavy

Při práci s regulárními výrazy mohou nastat specifické situace, které nástroj ošetřuje následujícími pravidly:

  • Pokud zadaný vzor neodpovídá žádné části textu, zobrazí se hlášení Žádné shody..
  • V případě syntaktické chyby v zapsaném regulárním výrazu nástroj zobrazí chybové hlášení Neplatný regulární výraz..
  • Pokud není aktivován globální příznak g, vyhledá se a zobrazí pouze první shoda v textu.
  • Při aktivním příznaku g je z výkonnostních důvodů nastaven limit pro vyhledávání na maximálně 1 000 shod.
  • Při aktivním příznaku g nástroj vygeneruje maximálně 100 karet jednotlivých shod v detailním přehledu. Pokud počet shod překročí tento limit, zobrazí se upozornění Zobrazuje se prvních {max}..
  • Kliknutím na tlačítko Vymazat dojde k vyčištění všech polí a zobrazení stavové zprávy Vymazáno..

Prevence katastrofálního zpětného vyhledávání

Jedním z nejčastějších problémů při psaní regulárních výrazů je takzvané katastrofální zpětné vyhledávání (catastrophic backtracking). K tomuto jevu dochází u nevhodně navržených vzorů s vnořenými duplicitami (například typu (a+)+), kdy se engine snaží prozkoumat enormní množství kombinací možného spárování u textu, který vzoru neodpovídá.

Tento proces může extrémně zatížit procesor a způsobit zamrznutí záložky prohlížeče. Nástroj proto obsahuje bezpečnostní pojistku: pokud vyhodnocování vzoru trvá déle než 2 sekundy, proces se automaticky stornuje a zobrazí se varování: Vyhodnocení tohoto vzoru trvá příliš dlouho – může jít o extrémně pomalý výraz. Zkuste ho zjednodušit.. Pro nápravu je nutné zjednodušit strukturu výrazu a eliminovat překrývající se volitelné skupiny.


Často kladené otázky

Je bezpečné sem vložit můj text?
Ano. Vyhodnocování regulárního výrazu probíhá kompletně ve vašem prohlížeči – do služby BroBroGo se nic neodesílá.

Co znamenají příznaky g/i/m/s?
Příznak g vyhledá všechny shody namísto pouze první. Příznak i ignoruje velikost písmen. Příznak m způsobí, že ^ a $ odpovídají začátku a konci každého řádku namísto celého řetězce. Příznak s umožňuje, aby tečka (.) odpovídala i znakům konce řádku.

Proč se zobrazilo upozornění, že vyhodnocení vzoru trvá příliš dlouho?
Některé vzory mohou způsobit tzv. katastrofální zpětné vyhledávání (catastrophic backtracking) – engine zkouší exponenciální množství kombinací, než vyhledávání vzdá, což může způsobit zamrznutí záložky prohlížeče. Tento nástroj v takovém případě vyhledávání po 2 sekundách zruší, takže samotná stránka nezamrzne. Zkuste zjednodušit vnořená opakování typu (a+)+.