| Příklad 1 | Regulární výrazy jsou citlivá na velká a malá písmena. TudížPřípad 1 najde zadaný text, zatímco Případ 2 ne. |
|---|
| Příklad 2 | Každý znak uvnitř prohledáváného vzorce je významný, včetně
"whitespace" znaků (mezera, tabelátor, konec řádku). |
|---|
| Příklad 3 | Některé znaky mají speciální význam.
Znak ^ nalezne začátek řádky (Případ 1), zatímco
značka dolaru $ nalezne konec řádku (Případ 2) |
|---|
| Příklad 4 | Pokud potřebujeme doslovnou hodnotu speciálního znaku,
pak tento znak musíme uvést znaménkem "\" (backslash).
Případ 1 nenalezne nic, jelikož
oba znaky jsou speciální.
Případ 2 nalezne všechny $,
Případ 3 nalezne $, ale pouze když je to první znak,
a Případ 4 pouze když je to poslení znak.
"Backslash" (zpětné lomítko) má speciální význam a pokud ho chceme
použít doslovně, musíme ho také uvést zpětným lomítkem (Případ 5). |
|---|
| Příklad 5 | Tečka . nalezne jakýkoli znak. |
|---|
| Příklad 6 | Pokud potřebujeme vyhledávat znak tečku, tak musíme
tečku v regulárním výrazu uvést zpětným lomítkem. |
|---|
| Příklad 7 | Uvnitř hranatých závorek "[]" můžeme zadat výčet znaků.
Výraz odpovídá, pokud je nalezen jakýkoli z těchto znaků.
Na pořadí znaků nezáleží (Případ 3) |
|---|
| Příklad 8 | Rozsah znaků může být specifikován pomocí syntaxu [ - ].
Případ 1 a Případ 2 jsou ekvivalentní.
V jednom výrazu můžeme zadat několik rozsahů
(Případ 5). |
|---|
| Příklad 9 | Pokud třída znaků začíná znakem ^, potom dané znaky
nebudou vybírány. |
|---|
| Příklad 10 | Různé alternativy mohou být uzavřeny do závorek a odděleny
separátorem |. |
|---|
| Příklad 11 | Kvantifikátory říkají, kolikrát se má daný znak vyskytnout.
Hvězdička * (Případ 1) odpovídá žádnému nebo více výskytům,
plus + (Případ 2) jednomu a více výskytům a
otazník ? (Případ 3) žádnému nebo jednomu. |
|---|
| Příklad 12 | Několik příkladů použití kvantifikátoru "*" |
|---|
| Příklad 13 | Několik příkladů použití kvantifikátoru "+" |
|---|
| Příklad 14 | Několik příkladů použití kvantifikátoru "?" |
|---|
| Příklad 15 | Složené závorky umožňují přesné zadat, kolikrát se má znak opakovat.
{m} nalezne znak vyskytující se přesně m-krát (Případ 1),
{m,n} nalezne znak vyskytující se minimálně m-krát a maximálně n-krát (Případ 2)
a
{m,} nalezna znak vyskytující se minimálně m-krát (Případ 3). |
|---|
| Příklad 16 | Kvantifikátory "*", "+", a "?" jsou speciální případy
zápisu pomocí závorek.
"*" je ekvivalent k {0,} (Případ 1, Případ 2),
"+" k {1,} (Případ 3, Případ 4), a "?" k {0,1} (Případ 5, Případ 6). |
|---|
| Příklad 17 | Implicitně jsou všechny "subpatterns" nalezeny tolikrát, kolikrát to
jen jde.
Toto chování může být změněno na nalezení co nejmenšího počtu,
pokud je kvantifikátor následován otazníkem.
Srovnej "*" (Případ 1) s "*?" (Případ 2),
"+" (Případ 3) s "+?" (Případ 4),
a "?" (Případ 5) s "??" (Případ 6). |
|---|
| Příklad 18 | \w nalezne jakýkoli znak slova (tj. alfanumerické znaky plus "_").
V některých jazycích nejsou tyto zkratky rozeznávány.
Pak použijte místo toho třídu znaků ("[A-z0-9_]") (Případ 5). |
|---|
| Příklad 19 | \W nalezne jakýkoli znak nevyskytující se ve slovech
(vše kromě alfanumerických znaků a "_" ).
Srovnej Případ 1 a Případ 2.
Je to ekvivalentní k "[^A-z0-9_]". |
|---|
| Příklad 20 | \s nalezne "white space" znaky:
mezery, konce řádků a tabelátory.
\S najde všechny "non-whitespace" znaky. |
|---|
| Příklad 21 | \d nalezne jakékoli číslo a \D zbytek.
Srovnej Případ 1 a Případ 2.
Použij "[0-9]", pokud tvůj programovací jazyk nepodporuje
tuto zkratku (Případ 3). |
|---|
| Příklad 22 | \b nalezne okraj slova
Okraj slova (\b) je definovଠjako bod mezi dv?ma znaky, p?i?em
na jedn石tran? je \w a na druh矜W (na po?ad럮ez맮 |
|---|
| Příklad 23 | \B nalezne všechno, co není okraj slova.
Okraj slova (\b) je definován jako bod mezi dvěma znaky, přičemž
na jedné straně je \w a na druhé \W (na pořadí nezáleží). |
|---|
| Příklad 24 | \A nalezne začátek řetězce.
Je podobný ^, ale ^ nachází začátek pouze po na začátku řádku
(po "newline"),
pokud je zpracováván víceřádkový řetězec.
Podobně \Z nalezne konec řetězce nebo konec řádku.
Je podobný $, ale $ nalezne pouze konce řádku
(před "newline"). |
|---|
| Příklad 25 | (?=<pattern>) se podívá dopředu, zda daný
vzorek existuje, ale nezahrne ho do zásahu. |
|---|
| Příklad 26 | (?!<pattern>)
se podívá dopředu, zda daný vzorek existuje.
Pokud ano, pak nebude žádný zásah. |
|---|