Regularni izraz | Prepoznate reči | Komentar | |
---|---|---|---|
Doslovne niske | Prevodioci i interpretatori | Prevodioci i interpretatori | |
Alternacija | Pascal|Java | Pascal Java | |
Opciono pojavljivanje | izrazi? | izraz izrazi | |
Engleski nazivi regularnih izraza | reg(ular expressions?|ex(p|es)?) |
regular expression regular expressions regex regexp regexes |
|
Ponavljanje | ab*c | ac abc abbc ... | Izraz se javlja 0 ili više puta |
Pozitivno ponavljanje | ab+c | abc abbc ... | Izraz se javlja 1 ili više puta |
Prebrojano ponavljanje | ab{3}c | abbbc | Izraz se javlja navedeni broj puta |
ab{3,5}c | abbbc abbbbc abbbbbc | ||
ab{3,}c | abbbc abbbbc abbbbbc abbbbbc... | ||
ab{,3}c | ac abc abbc abbbc | ||
Karakterske klase | [aeiou] | a e i o u | Prepoznaje se tačno jedan od karaktera iz klase |
[a-zA-Z0-9_] | b D 7 _ | ||
Negirane karakterske klase | [^aeiou] | b c d f 8 { ... | Prepoznaje se tačno jedan karakter koji se ne nalazi u klasi |
Tačkica | x.y | xfy x y x;y | Bilo koji karakter osim prelaska u novi red. |
Specijalni karakteri | 1\+1=2 | 1+1=2 | Specijalni karakteri su : \[, \\, \^, \$, \., \|, \?, \*, \+, \(, \) |
C:\\My Software\\(C\+\+|C#)\\ |
C:\My Software\C++\ C:\My Software\C#\ |
||
Nevidljivi karakteri | a\tb |
a b |
Nevidljivi karakteri su:
\n,
\r,
\t,
\a,
\e,
\f,
\v
ASCII ili ANSI kod: \xA9 UNICODE kod: \u20A0 |
Specijalni karakteri u klasama | []^\\-] | ] ^ \ - |
Kosa crta \: navodi se dvostruko, npr. [x\\y], Crtica -: na početku ili kraju klase ili kao \- , npr. [-xy], [xy-], [x\-y] Kapica ^: ako nije prvi karakter navodi se obično, a ako je na početku onda kao \^, npr. [x^y], Zatvorena zagrada ]: Ako je prvi karakter (eventualno posle negacije ^) navodi se obično, a inače kao \] npr. [^]})] |
Predefinisane klase | \d\d\w | 23a 39_ 007 |
\w - karakteri koji se javljaju u rečima, \d - cifre, \s - beline Odgovarajuće negirane klase: \W, \D, \S |
Četvorocifreni heksadekadni broj | [\da-fA-F]{4} | 3 1 b F | |
Sidra | ^a | U reči aba ababa prepoznaje se samo prvo pojavljivanje a |
Simbol ^ ograničava pronalaženje samo na početak niske koja se pretražuje Simbol $ ograničava pronalaženje samo na kraj niske koja se pretražuje |
a$ | U reči aba ababa prepoznaje se samo krajnje pojavljivanje a | ||
Vodeće i prateće beline | (?m)^[ \t]+|[ \t]+$ | Zdravo svima -> Zdravo svima | Ovakve beline se izbacuju zamenom pojava datog regularnog izraza praznom rečju |
Granice reči | \bm | Drugo m u niski zanimljiva matematika | |
Pozitivni preduvid | t(?=i) | Drugo t u reči matematika | |
Negativni preduvid | t(?!e) | Drugo t u reči matematika | |
E-mail adrese | \b[\w.-]+@[\w.-]+(\.[\w.-]+)*\.[A-Za-z]{2,4}\b |
peraperic@gmail.com ana.anic@goef.bg.ac.yu name-unkown@123_abc.info |
|
HTML linkovi | <a[^>]*>(.*?)</a> |
<a href='http://www.google.com'>Google</a> |
|
XML etikete | <([A-Z][A-Z0-9]*)[^>]*>(.*?)</\1> | <tag attribute='value'>Content</tag> | |
Brojevi u pokretnom zarezu | [-+]?[0-9]*\.?[0-9]* | -3.2 +4. .3 -.7 . + | |
[-+]?([0-9]*\.[0-9]+|[0-9]+) tj. [-+]?[0-9]*\.?[0-9]+ |
-3.2 +4. .3 -.7 | ||
[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)? | -3.2 +4. .3 -.7 -3.1e10 45.12E-23 | ||
C++ komentari | //.*$ | U niski i++; //uvecanje i za jedan ce biti prepoznato: //uvecanje i za jedan | |
C/C++ pretprocesorske direktive | ^\s*(#.*)$ | #include <stdio.h> | |
C komentari | (?s)/\*.*?\*/ | /*Ovo je komentar*/ | Opcija (?s) omogućava da tačka prepozanje i prelazak u novi red. Zbog lenje zvezdice, nisu dozvoljeni ugnežđeni komentari. |
C niske karaktera |
"(\\.|[^"\\])*?" ili "[^"\\]*(\\.[^"\\]*)*" |
"abc" "a\nc" "a\nb\"c" | Drugi izraz je efikasniji |
Datumi | (0[1-9]|[12][0-9]|3[01])([- /.])(0[1-9]|1[012])\2(19|20)\d\d | 01/01/1900 31.12.2099 31 04 2005 | |
Linije koje sadrže neku od datih reči |
^.*\b(prevodioci|interpretatori|pii)\b.*$ ili ^.*?\b(prevodioci|interpretatori|pii)\b.*$ |
Programski prevodioci Kakvi su ovo interpretatori? |
Kod prvog izraza \1 sadrži prvo pojavljivanje reči, a kod drugoga poslednje. |
Linije koje sadrže svaku od datih reči | ^(?=.*?\bcrvena\b)(?=.*?\bbela\b)(?=.*?\bplava\b).*$ |
Moje boje su crvena, plava i bela.
|
|