#1 Znaky
Základní
Syntaxe | Popis | Příklad výrazu | Příklad textu |
---|---|---|---|
\d | Znak, který je číslicí od 0 do 9 | p_\d | p_2 |
\D | Jakýkoli znak, který není číslicí | 123\D56 | 123K56 |
\w | Znak, který je písmenem, číslicí nebo podržítkem | -\w- | -A- |
\W | Jakýkoli znak, který není písmenem (z většiny interpunkce) | A\W9 | A-9 |
\s | Bílý prostor (mezera, nezlomitelná mezera, nový řádek…) | P\sO | P O |
\S | Cokoli, kromě bílého prostoru | 543\S1 | 543_1 |
Doplňující
Syntaxe | Popis | Příklad výrazu | Příklad textu |
---|---|---|---|
. | Cokoli, kromě nového řádku | a.c.e | abcde |
\ | Speciální znak (backslash či zpětné lomítko) – uniknutí RegEx znakům | slovo\\ | slovo\ |
\. | Tečka (uniknuta speciálním znakem) | \.cz | .cz |
Třídy znaků
Syntaxe | Popis | Příklad výrazu | Příklad záchytu |
---|---|---|---|
[ … ] | Jeden ze znaků v závorce | hr[ya] | hra |
- | Rozsah mezi znaky | A[0-9]Z | A2Z |
[AB1-4C-Z] | G | ||
[^…] | Jeden ze znaků, které nejsou v závorce | [0-8] | 9 |
[0-8B-Z]{2} | 9A |
#2 Kvantifikátory
Syntaxe | Popis | Příklad výrazu | Příklad textu |
---|---|---|---|
+ | Jednou nebo vícekrát | ab\d+c | ab245c |
{n} | Přesně nkrát | A\d{3}B | A123B |
{n, m} | Přesně n až mkrát, včetně | A\d{2,4}B | A12B |
{n,} | Přesně n a vícekrát | A\d{2,}B | A12345B |
* | Nula nebo vícekrát | AB\d*C | AB1C |
? | Jednou nebo nulakrát | AB\d?C | ABC |
Zároveň speciální znak, který dělá kvatifikátory „líné“ – stačí jim nejmenší hodnota a dále nehledají | A\d{2,4}? | A23 |
#3 Logické operátory
Operátor | Popis | Příklad výrazu | Příklad textu |
---|---|---|---|
| | Nebo (operátor OR) | aa|bb | bb |
( … ) | Zachycovací skupina (později ji lze někam vložit) | Ko(čka|cour) | Kocour |
\1 | První zachycená skupina (lze zachytávat nekonečně skupin, nahrazuje se číslo podle pořadí) | ||
(?: … ) | Nezachytávací skupina (seskupuje, ale nelze ji nikam vložit) | Ko(čka|cour) | Kocour |
#4 Lookaround konstrukce
Lookaround | Název | Popis | Příklad výrazu | Příklad textu |
---|---|---|---|---|
(?=…) | Pozitivní lookahead | Vyhledá text, po kterém následuje daný RegEx | (?=\w{2})\d | 2AB |
(?<=…) | Pozitivní lookbehind | Vyhledá text, před kterým následuje daný RegEx | (?<=\w{2})\d | AB2 |
(?!…) | Negativní lookahead | Vyhledá text, za kterým není daný RegEx | (?!\d{2})\d | 2AB |
(?<!…) | Pozitivní lookbehind | Vyhledá text, před kterým není daný RegEx | (?<!\d{2})\d | AB2 |