Hledáte kvalitní a spolehlivý webhosting? Vyzkoušejte Český hosting.
Webhosting 1000 Kč/rok: 2GB, PHP 4 i 5, neom. subdomén a emailů, 10 databází  

Shrnutí syntaxe regulárních výrazů

Přehled syntaxe ke stažení (PDF - formátování pro tisk)

Shrnutí si můžete také stáhnout v PDF.

Tečka, zpětné lomítko
. odpovídá libovolnému znaku k.s odpovídá kus, kos, k2s aj.
\ vrací metaznaku původní význam a\+b odpovídá a+b
Kvantifikátory - Předcházející znak se musí vyskytovat....
? minimálně 0x, maximálně 1x ku?s odpovídá právě ks a kus
* minimálně 0x, maximálně neomezeně krát halo* odpovídá hal, halo, haloooo apod.
+ minimálně 1x, maximálně neomezeně krát halo+ odpovídá halo, haloooo apod.
{n} právě n-krát 10{6} odpovídá právě 1000000
{m,n} minimálně m-krát, maximálně n-krát
10{2,4} odpovídá právě 100, 1000 a 10000
{n,} minimálně n-krát 10{2,} odpovídá 100, 1000, 10000, 10000 apod.
Skupiny znaků
[ ] odpovídá jednomu ze znaků v závorkách [abc] odpovídá právě a, b, c
[^ ] odpovídá jednomu znaku, neuvedenému v závorkách
[^abc] odpovídá libovolný znak krom a, b, c
[ - ] odpovídá jednomu znaku z rozsahu znaků [a-z] odpovídají (malá) písmena abecedy
\s odpovídá bílému znaku (\n, \r, \t, mezera aj.) a\sb odpovídá a b, ale ne ab
\S odpovídá jinému než bílému znaku a\Sb odpovídá a+b, ale ne a b
\d odpovídá desítkové číslici a\db odpovídá a2b, ale ne axb
\D odpovídá libovolnému znaku kromě číslic 0-9 a\Db odpovídá axb, ale ne a2b
\w odpovídá alfanumerickému znaku a podtržitku \w odpovídá 1, a, A, _ ap., ale ne $, + ap.
\W odpovídá nealfanumerickému znaku nebo podtržítku \W odpovídá $, !, ?, % ap., ale ne 2, b ap.
Hranice (ukotvení) - Odpovídá pozici...
^ na začátku řetězce či řádku ^Petr najde Petr jen na začátku řetězce/řádku
$ na konci řetězce či řádku Pavel$ najde Pavel jen na konci řetězce/řádku
\b na začátku či konce tzv. slova \bkos\b nenajde kos ve slově kost či kokos
\B kdekoliv kromě začátku a konce slova \Bkos najde kos ve slově kokos, ale ne v kost
Alternativy, seskupování, zpětné odkazy (reference)
| odděluje několik dílčích výrazů ahoj|nazdar odpovídá právě jednomu z pozdravů
odděluje několik dílčích subvýrazů a(b|c) odpovídá právě ab a ac
( ) subřetězec na nějž je možno aplikovat kvantifikátor ko(ko)?s odpovídá právě kos a kokos
subřetězec na nějž se lze odkazovat (\d)\1 resp. (\d)$1 odpovídá 11, 22, 33 apod.
Speciální závorkové konstrukce
(?: ) uzávorkování netvořící zpětnou referenci (?:\d)(\d)\1 bude odpovídat 122, 133, 455 apod. 
(?# ) komentář - text v závorkách za znakem # je ignorován a(?#test)b odpovídá právě ab
(?= ) kladné tvrzení o následujícím kos(?=t) odpovídá kos v kost, ale ne v kosa
(?! ) záporné tvrzení o následujícím kos(?!t) odpovídá kos v kosa, kosu ale ne v kost
(?<= ) kladné tvrzení o předcházejícím \d{3}(?<=0) sekvence 3 číslic; poslední musí být 0
(?<! ) záporné tvrzení o předcházejím \d{3}(?<!0) sekvence 3 číslic; poslední nesmí být 0
Modifikátor Název Funkčnost
i ignore case nerozlišování malých/velkých písmen
s single line . odpovídá i znaku \n (nový řádek)
m multiple lines ^/$ odpovídá i začátku/konci každého řádku
x extended bílé znaky a komentáře (znaky vpravo od #) jsou ignorovány
g global match hledány všechny části řetězce, které odpovídají regulárnímu výrazu
Perl PHP PCRE PHP POSIX Javascript .NET
Skupiny znaků
číslice \d \d [[:digit:]] \d \d
písmena [a-zA-Z] [a-zA-Z] [[:alpha:]] [a-zA-Z] [a-zA-Z]
alfanumerické \w \w [[:alnum:]] \w \w
bílé znaky \s \s [[:space:]] \s \s
Zpětné reference
n-tý subvýraz - reference v RV
\n
$n
\n × \n $n
n-tý subvýraz - reference v náhradě
$n \n
$n
\n $n $n
celý řetězec shody $& \0
$0
\0 $& $0
$&
řetězec před shodou $` × × $` $`
řetězec za shodou $' × × $' $'
Specifické konstrukce
Kladné tvrzení o následujícím (?= ) (?= ) × (?= ) (?= )
Záporné tvrzení o následujícím (?! ) (?! ) × (?! ) (?! )
Kladné tvrzení o přecházejícím (?<= ) (?<= ) × × (?<= )
Záporné tvrzení o předcházejícím (?<! ) (?<! ) × × (?<! )
Uzávorkování bez zpětné reference (?: ) (?: ) × × (?: )
Komentář řádkový
#komentář #komentář × × #komentář
Komentář uzávorkovaný (?#komentář) (?#komentář) × × (?#komentář)
Pojmenované subvýrazy × (?P<jméno> ) × × (?<jméno> )

× - vlastnost není podporována

Shrnutí si můžete také stáhnout v PDF.