Tester regulárních výrazů v PHP, Perlu, JavaScriptu, AWK, Grep a PCREGrep

Tester regulárních výrazů

Na této stránce si můžeš otestovat, zda textový řetězec vyhovuje regulárnímu výrazu POSIX ERE (POSIX Extended Regular Expression) nebo PCRE (Perl Compatible Regular Expression). Výraz můžeš testovat funkcemi v PHP, Perlu a JavaScriptu nebo nástroji AWK, Grep a PCREGrep. Protože různé nástroje a jazyky interpretují regulární výrazy různě, některé konstrukce nemusejí fungovat stejně.

1. Regulární výraz POSIX ERE nebo PCRE


PCRE výraz bude automaticky vsazen do lomítek jako oddělovačů, /regexp/, max. 1000 bajtů

2. Testovaný řetězec


Max. 10000 bajtů

3. Modifikátory






4. Nástroje

5. Výsledek

Vyplň regulární výraz, testovaný řetězec, nastav modifikátory a klikni na jeden z nástrojů.

Z bezpečnostních důvodů jsou 1 měsíc archivovány vložený regulární výraz, testovací řetězec, IP adresa, datum a čas.

Syntaxe regulárních výrazů

Stručný přehled syntaxe obou verzí regulárních výrazů. Podrobnější informace najdeš na stránkách v odkazech níže.

POSIX rozšířené - ERE

^ začátek řetězce
$ konec řetězce
. libovolný znak bez / včetně \n
[ ] výčet znaků, např. [abc]
[^ ] negativní výčet znaků, např. [^abc]
- rozsah znaků ve výčtu, např. [a-z]
( ) ohraničení podvýrazu, např. (.+)
| logické NEBO mezi výrazy, např. jpg|gif
? žádné nebo jedno opakování, např. jpe?g
* žádné nebo více opakování, např. a*
+ jedno nebo více opakování, např. a+
{min,max} opakování od min do max, např. a{0,3}

POSIX znakové třídy

[:<:] začátek slova
[:>:] konec slova
[:alnum:] písmena a číslice, [A-Za-z0-9]
[:word:] písmena, číslice a podtržítko, [A-Za-z0-9_]
[:alpha:] písmena, [A-Za-z]
[:blank:] znak mezery a tabelátoru, [ \t]
[:cntrl:] kontrolní znaky, [\x00-\x1F\x7F]
[:digit:] číslice, [0-9]
[:graph:] viditelné znaky, [\x21-\x7E]
[:lower:] malá písmenka, [a-z]
[:print:] viditelné znaky a mezera, [\x20-\x7E]
[:punct:] interpunkční znaménka [-!"#$%&'()* +,./:;<=>?@[\\\]^_`{|}~]
[:space:] neviditelné znaky, [ \t\r\n\v\f]
[:upper:] velká písmenka, [A-Z]
[:xdigit:] hexadecimální číslice, [A-Fa-f0-9]

Perl kompatibilní - PCRE

^ začátek řetězce / řádky (multiline)
$ konec řetězce / řádky (multiline)
. libovolný znak bez / včetně \n
[ ] výčet znaků, např. [abc]
[^ ] negativní výčet znaků, např. [^abc]
- rozsah znaků ve výčtu, např. [a-z]
( ) ohraničení podvýrazu, např. (.+)
| logické NEBO mezi výrazy, např. jpg|gif
? žádné nebo jedno opakování, např. jpe?g
* žádné nebo více opakování, např. a*
+ jedno nebo více opakování, např. a+
{min,max} opakování od min do max, např. a{0,3}

PCRE zástupné znaky

\a alarm, [\x07]
\e escape, [\x1B]
\f formfeed, [\x0C]
\n nový řádek, [\x0A]
\r návrat vozíku, [\x0D]
\t tabelátor, [\x09]
\x00 znak v šestnáctkové soustavě
\d desítková číslice, [0-9]
\D jakýkoliv znak vyjma číslice, [^0-9]
\s neviditelné znaky
\S jakýkoliv znak vyjma neviditelného
\w jakýkoliv znak slova
\W jakýkoliv znak vyjma znaku slova
\b hranice slova
\B opak hranice slova
\A začátek řetězce
\Z konec řetězce nebo poslední řádky
\z konec řetězce

Informace o regulárních výrazech

Několik užitečných stránek o regulárnách výrazech.

Pokud najdeš zajímavou stránku, napiš webmasterovi, možná ji sem přidá.

Historie regexp.cz

Tento web byl spuštěn již v roce 2001 nadšencem regulárních výrazů Martinem Sýkorou. V únoru 2010 dostal web nový design, obsah i nové možnosti testování rozšířené o Grep a PCREGrep.

Verze 2.2.1, aktualizováno 20.2.2014

Nábor scoutů zde

Buď 2.5 krát výkonnější. Začni sekat weby jako kdysi Baťa cvičky. Nábor scoutů zde!