Perl, Regulární výrazy (31.díl)

Napsal O webu (») 27. 5. 2008 v kategorii Programování, přečteno: 1562×
obrazky/logo_perl.jpg

Metaznaky

Některé znaky použité v regulárním výrazu neodpovídají samy sobě, ale mají speciální význam. Pokud mají speciální význam samy o sobě, hovoříme o tzv. metaznacích. Jedná se o tyto symboly:



\ | ( ) ^ $ [ . * + ? {




Jestliže chceme, aby vzor obsahoval některý z těchto metaznaků, je třeba před něj uvést znak obráceného lomítka, čímž dochází k potlačení jeho speciálního významu (symbol znamená výskyt znaku v řetězci, symbol . výskyt znaku . apod.). Následující tabulka shrnuje všechny metaznaky spolu s popisem jejich použití:


ZnakVýznam
Potlačuje metacharakter následujícího znaku
|Odděluje možné varianty
( )Seskupuje znaky
^Pozice začátku řetězce nebo řádku
$Pozice konce řetězce nebo řádku
[Začátek třídy znaků
.Libovolný jeden znak
*Výskyt symbolu 0 nebo vícekrát
+Výskyt symbolu 1 nebo vícekrát
?Výskyt symbolu 0 nebo 1krát
{Začátek určení počtu opakování

Metasymboly

Metasymboly jsou sekvence o více než jednom znaku, jež také mají svůj speciální význam. Pokud znak obráceného lomítka uvedeme před znakem, který není metaznakem, nebo před skupinou znaků, stává se z celé této sekvence metasymbol. Dalším typem metasymbolů jsou kvantifikátory (některé se skládají více než z jednoho znaku) či rozšířené vzory. Následující tabulka shrnuje nejdůležitější metasymboly spolu s popisem jejich použití:


MetasymbolVýznam
Znak ASCII NUL
nnZnak s ordinálním číslem nnn (osmičkově)
čísliceZpětný odkaz
aPípnutí
APozice začátku řetězce
 Znak backspace
B Pozice jinde než hranice slova
cXZnak Ctrl+X
CJeden byte
dČíslice
DJiný znak než číslice
eZnak Escape
EUkončovací symbol k L, U a Q
fZnak konce stránky
GPozice posledního nalezení vzoru
lNásledující znak malými písmeny
Znak konce řádku
N {NAME}Pojmenovaný znak
Návrat vozíku
sBílý znak
SJiný než bílý znak
Tabulátor
uNásledující znak velkými písmeny
wAlfanumerický znak
WJiný než alfanumerický znak
x {xxx}Znak hexadecimálně
XZnak v sadě UNICODE


A to by bylo pro dnešek všechno. V dalším díle se podíváme na třídy znaků. V případě jakýchkoliv dotazů mě kontaktujte na email: habrman@banan.cz.


Autor: Robert Habrman
Štítky: Perl
Facebook Twitter Topčlánky.cz Linkuj.cz

Komentáře

Zobrazit: standardní | od aktivních | poslední příspěvky | všechno
Článek ještě nebyl okomentován.


Nový komentář

Téma:
Jméno:
Notif. e-mail *:
Komentář:
  [b] [obr]
Odpovězte prosím číslicemi: Součet čísel deset a dvě