Regularni izrazi in Writer

From Apache OpenOffice Wiki
Jump to: navigation, search


Uvod

Enostavno rečeno so regularni izrazi pameten način iskanja in zamenjevanja besedila (podobno kot 'nadomestni znaki'). Regularni izrazi so lahko tako uporabni kot zapleteni, zato se neizkušeni uporabniki kaj hitro zmotijo. Tukaj je opisana raba regularnih izrazov OpenOffice.org, kar želimo narediti dovolj jasno za začetnike, medtem ko so bolj podrobni vidiki, ki lahko neukega bralca zmedejo, prepuščeni bolj izkušenim uporabnikom.

Tipično uporabljamo regularne izraze za iskanje besedila v dokumentih programa Writer; če želite npr. poiskati vse pojavitve besed gospod ali gospa v svojem dokumentu, bi lahko iskali z regularnim izrazom, ki bi našel pojavitve obeh besed.

Regularni izrazi so zelo pogosti na določenih področjih računanja in jih pogosto imenujejo regex ali regexp (okrajšano za 'regular expression'). Ker niso med seboj povsem enaki, je branje ustreznega priročnika povsem smiselno.

Kje lahko v OpenOffice.org uporabim regularne izraze

V modulu Writer:

  • Uredi - pogovorno okno Najdi in zamenjaj
  • Uredi - Spremembe - ukaz Sprejmi/Zavrni (zavihek Filter)

V modulu Calc:

  • Uredi - pogovorno okno Najdi in zamenjaj
  • Podatki - Filtriraj - Standardni filter oz. Napredni filter
  • Pri določenih funkcijah, kot sta SUMIF in LOOKUP

V modulu Base:

  • ukaz Najdi zapis

Pogovorna okna, ki se pojavijo, če uporabite zgornje ukaze, imajo možnost uporabe regularnih izrazov (ki je privzeto izključena). Primer:

položaj potrditvenega polja za regularne izraze

Vedno, ko odprete to pogovorno okno, preverite stanje možnosti za regularne izraze, saj je privzeto 'izključeno'.

Enostaven primer

Če z regularnimi izrazi nimate izkušenj, jih boste najlažje preučili v modulu Writer, ne pa modulu Calc.

V modulu Writer odprite pogovorno okno Najdi in zamenjaj v meniju Uredi.

V pogovornem oknu izberite Več možnosti in potrdite polje Regularni izrazi.

V polje Search vnesite r.k - pika na tem mestu predstavlja 'poljuben posamezen znak'.

S klikom gumba Najdi vse boste našli vsa mesta, kjer črki r sledi nek drug znak, nato pa še k, npr. 'rik' ali 'burek' ali 'korakali' ali 'moker kamen' (v tem zadnjem primeru r sledi presledek, nato k - presledek šteje kot znak).

Če vnesete xxx v polje Zamenjaj z in kliknete gumb Zamenjaj vse, najdeno spremenite v 'xxx', 'buxxx', 'koxxxali', 'mokexxxamen'

To morda ni preveč uporabno, razloži pa načela delovanja. V nadaljnjih primerih bomo uporabo pogovornega okna Najdi in zamenjaj razložili še podrobneje.

Najmanj, kar morate vedeti o regularnih izrazih

Tudi če vas ne zanima, kako dejansko delujejo regularni izrazi, želite pa le opraviti svoje delo, vam bodo naslednji pogosti primeri v pomoč. Vnesite jih v polje 'Išči' in preverite, da so regularni izrazi potrjeni.

  • krom|Cr najde krom in Cr
  • obl.ka najde obl, kateremu sledi poljuben znak, nato pa ka - npr. obleka, oblika in celo oblXka
  • kr[ae]ma najde krema in krama - [ae] pomeni a ali e
  • spremenjeni? poišče spremenjen in spremenjeni - i je neobvezen, saj mu sledi vprašaj.
  • s\> poišče s na koncu besed.
  • \<. poišče prvo črko besede.
  • ^. poišče prvo črko odstavka.
  • ^$ poišče prazen odstavek.

Kako so regularni izrazi obravnavani v OpenOffice.org

Regularni izrazi OpenOffice.org razbijejo besedilo, po katerem iščemo, na kose in preiščejo vsak kos ločeno.


V modulu Writer se besedilo videti razdeljeno na odstavke. Primer: č.*ž se ne ujema s č na koncu odstavka in z ž, ki začenja naslednji odstavek ( č.*ž pomeni č, nato katerikoli ali noben znak, nato ž). Odstavki so obravnavani ločeno (čeprav obravnavamo nekaj posebnih primerov na koncu tega KakOOojčka).


obseg regularnih izrazov


Poleg tega Writer obravnava vsako celico tabele in vsak okvir z besedilom ločeno. Besedilni okviri se pregledajo po tem, ko je bilo pregledano vse besedilo in vse celice tabel na vseh straneh.


V pogovornem oknu Najdi in zamenjaj lahko regularne izraze uporabite v polju Išči. V polju Zamenjaj z jih v splošnem ne smemo uporabljati. Izjeme bomo obravnavali kasneje.

Dejanski znaki

Če vaš regularni izraz vsebuje znake, ki niso 'posebni znaki' . ^ $ * + ? \ [ ( { |, lahko te znake zapišete neposredno.


Primer: res se ujema z res, resnično in kresnik.


OpenOffice.org vam omogoča izbrati, če želite, da je znak 'VELIKA ČRKA' ali 'mala črka'. Če potrdite polje 'Razlikuj med velikimi in malimi črkami' v pogovornem oknu Najdi in zamenjaj, potem se res ne bo ujemal z Res ali KRES; če polja ne označite, bo velikost črke prezrta in bosta oba med zadetki.

Posebni znaki

Posebni znaki so . ^ $ * + ? \ [ ( { |


V regularnih izrazih imajo poseben pomen, kar boste izvedeli kasneje.


Če želite dejansko poiskati enega od teh znakov, postavite predenj levo poševnico '\'.


Primer: če želite najti $100, uporabite \$100 - v tem primeru \$ predstavlja znak $.

Ujemanje posameznega znaka .  ?

Poseben znak pika '.' predstavlja poljuben znak (z izjemo preloma vrstice).


Primer: r.s se ujema z 'res' in 'kres' in 'brisača' in 'ker dišiš'


Poseben znak vprašaj '?' pomeni 'ujemanje z nobenim ali enim od navedenih znakov' - ali 'ujemanje z navedenim znakom, če ga je mogoče najti'.


Primer: kre?ma se ujema z 'krma' in 'krema' - 'e?' pomeni 'ujemanje z enim samim e, če tak obstaja'.


Posebne znake lahko kombinirate med seboj. Pika, ki ji sledi vprašaj, pomeni 'ujemanje z nobenim ali poljubnim posameznim znakom'.


Primer: star.?ing se ujema z 'staring', 'starring', 'starting' in 'starling', ne pa tudi z 'startling'

Ponavljajoče ujemanje + * {m,n}

Poseben znak plus '+' pomeni 'ujemanje z enim ali več navedenih znakov'.


Primer: re+s se ujema z 'res' in 'rees' in 'reeeees' - e+ pomeni ujemanje z enim ali več e-jev.


Posebni znak zvezdica '*' pomeni 'ujemanje z nobenim ali več navedenih znakov'.


Primer: kre*ma se ujema z 'krma' in 'krema' in 'kreeeeeema' - 'e*' pomeni ujemanje z nobenim ali več e-ji.


Pogosta raba '*' je po znaku za piko - t.j. '.*', kar pomeni 'poljuben ali noben znak'.

Primer: kr.*ma se ujema z 'krema' in 'krXma' in 'krYYYYma', ne pa tudi - 'krma' ali 'kreXma'

Zvezdico '*' uporabljajte previdno; zajela bo vse, kar lahko:


Primer: 't.*i' se ujema s 'tri', toda če je v programu Writer vaš odstavek dejansko 'Mladi turški sodnik je upravičeno podelil tri rdeče kartone', se zadetek glasi: 'turški sodnik je upravičeno podelil tri' - t.j. prvi 't' in zadnji možen 'i'. Regularni izrazi so po naravi požrešni.


Z zavitimi oklepaji { } lahko navedete, kolikokrat želite, da se ponovi ujemanje. Primer: a{1,4}h! se ujema z ah!, aah!, aaah! in aaaah! - drugače povedano: enemu do štirim a-jem sledi h!.

Upoštevajte tudi, da se bo a{3}h! ujemal z natanko 3 a-ji, t.j. aaah!, a{2,}h! (z vejico) pa se bo ujemal z najmanj 2 a-ji, npr. aah! in aaaaaaaah!.

Ujemanje položaja ^ $ \< \>

Poseben znak cirkumfleks '^' pomeni 'ujemanje na začetku besedila'.

Poseben znak dolar '$' pomeni 'ujemanje na koncu besedila'.


Zapomnite si, da regularni izrazi OpenOffice.org razdelijo besedilo, po katerem iščete - vsak odstavek v modulu Writer je obravnavan ločeno.

Primer: ^res poišče 'res' na začetku odstavka (res nas ni nič presenetilo).

Primer: res$ poišče 'res' na koncu odstavka (čutil je, da je res)

Primer: ^res$ poišče celico v tabeli, ki vsebuje le 'res'


Poleg tega tudi trdi prelom vrstice (vnesemo ga s Shift+Enter) velja za začetek / konec besedila in dovoljuje ujemanje ^ ali $.


Poseben znak leva poševnica '\' daje poseben pomen parom znakov '\<' in '\>', in sicer 'ujemanje na začetku besede' in 'ujemanje na koncu besede'


Primer: \<res poišče res na začetku besede (bila je bolj resna kot on).

Primer: res\> poišče res na koncu besede (čeprav niso zares kradli.)


Preizkus za določanje začetka/konca besede je pogoj, da je prejšnji/naslednji znak presledek, podčrtaj (_), tabulator, nova vrstica, oznaka odstavka ali katerikoli drug ne alfa numerični znak.

Primer: \<res se ujema z 'oseba@resnica.com'

Primer: res\> se ujema z 'Rekel sem: "Nikoli zares" '

Alternativno ujemanje | [...]

Znak navpičnica oz. pokončnica '|' je poseben znak, ki v izrazu dovoljuje ujemanje z obeh strani znaka '|'.


Primer: res|laž se ujema z 'res' in 'laž'


Žal nekateri izrazi, ki nastopijo po navpičnici, niso ovrednoteni. To vpliva na rabo ^ in povratnih sklicev in je predmet zadeve 84828.


Primer: ^res|laž poišče odstavke, ki se začenjajo z 'res' in vsakršno pojavitev 'laž', toda laž|^res nepravilno poišče le vse pojavitve 'laž', ne poišče pa odstavkov, ki se začenjajo z 'res'


Znak za oglati uklepaj [ je poseben znak. Znaki, zaobjeti z oglatima oklepajema so obravnavani kot alternative - katerikoli izmed njih se lahko ujema. Vključite lahko tudi obseg znakov, kot je a-zčšž ali 0-9, namesto da vnesete abcčdefghijklmnopqrsštuvwxyzž ali 0123456789


Primer: r[ei]s poišče 'res' in 'ris', ne pa tudi z 'rus'

Primer: [l-n]et poišče 'let' in 'met' in 'net'

Primer: [bl-n]et poišče 'bet' in 'let' in 'met' in 'net'


Posebni znaki v objemu oglatih oklepajev alternativnih ujemanj nimajo enakega posebnega pomena. Edini znaki s posebnim pomenom so ], -, ^ in \; ti pomeni so naslednji:

  • ] - oglati zaklepaj zaključi množico alternativnih ujemanj [abcčdef]
  • - - vezaj nakazuje obseg znakov, kot smo že videli, npr. [0-9]
  • ^ - če je cirkumfleks prvi znak v oglatih oklepajih, negira iskanje. Primer: [^a-dxyz] poišče vse znake z izjemo abcdxyz.
  • \ - leva poševnica dovoljuje dejansko uporabo ], -, ^ in \ v oglatih oklepajih, kot tudi šestnajstiške kode. Primer: \] predstavlja dejanski oglati zaklepaj, tako da [[\]a] poišče oglati uklepaj [, oglati zaklepaj ] ali a. \\ predstavlja dejansko levo poševnico. \x0009 predstavlja znak za tabulator.

Naj še enkrat poudarimo: to so pomeni teh znakov znotraj oglatih oklepajev, vsi drugi znaki pa so obravnavani dejansko. Primer: [\t ] poišče 't' ali presledek - ne pa tudi tabulator ali presledek. Če želite poiskati tabulator ali presledek, uporabite [\x0009 ].

Izrazi POSIX v oklepajih [:alpha:] [:digit:] itn.

O slednjih je v skupnosti OpenOffice.org preveč zmede. Tudi sama pomoč je daleč od tega, da bi bila jasna.

V regularnih izrazih OpenOffice.org so na voljo številni 'izrazi POSIX v oklepajih' (včasih poimenovani 'razredi znakov POSIX') v obliki [:classname:], ki dovoljuje ujemanje s poljubnim znakom iz tega razreda. Primer: [:digit:] pomeni števke 0123456789.

Ti se lahko (po definiciji) pojavijo le znotraj oglatih oklepajev alternativnih ujemanj - tako je veljavna skladnja [abc[:digit:]], kar se ujema z a, b, c ali poljubno števko 0-9. Pravilna skladnja za ujemanje zgolj ene števke bi bila [[:digit:]].

Žal to ne deluje, kot bi moralo! Pravilna skladnja sploh ne deluje, vendar trenutno nepravilna skladnja ([:digit:]) dejansko najde števko, v kolikor se nahaja zunaj oglatih oklepajev alternativnih ujemanj. (To očitno ni zadovoljivo in je tudi predmet zadeve 64368).

Na voljo so spodaj navedeni izrazi POSIX v oklepajih. Upoštevajte, da je natančna definicija vsakega izmed njih odvisna od krajevnih nastavitev - v drugem jeziku so npr. 'črke abecede' v [:alpha:] drugi znaki. Tukaj podani pomeni v splošnem veljajo za angleško-govoreče krajevne nastavitve (in ne obravnavajo težav z Unicode).

[:digit:] 
pomeni poljubno števko 0123456789. To je identično 0-9.
[:space:] 
bi moralo pomeniti znak za poljubno vrsto presledka, vključno s tabulatorjem; vendar je trenutno implementirano tako, da predstavlja le znak za presledek. Upoštevajte, da je trenutna pomoč OpenOffice.org glede tega trenutno zavajajoča. (To je predmet zadeve 41706).
[:print:] 
bi moralo pomeniti poljuben natisljiv znak; vendar s trenutno implementacijo ne poišče niti enojnega niti dvojnega narekovaja ‘ ’ “ ” (in nekaterih drugih, kot je « »). Najde presledek, vendar ne tudi tabulatorja (slednje je pričakovano/definirano vedenje). (To je predmet zadeve 83290).
[:cntrl:] 
pomeni kontrolni, nadzorni znak. Dokumenti OpenOffice.org imajo s stališča uporabnika zelo malo nadzornih znakov; tabulator (tab) in trdi prelom vrstice (hard_line_break) poiščeta zadetke, znak za odstavek (paragraph_mark) pa ne.
[:alpha:] 
pomeni črko (vključno s črkami z naglasi in strešicami). Primer: v frazi (pogosto uporabljeni v slovenščini in angleščini, tukaj podani z naglasi kot v izvirnem jeziku) 'déjà vu' se ujema vseh 6 črk.
[:alnum:] 
pomeni črko, ki ustreza pogoju [:alpha:] ali [:digit:]
[:lower:] 
pomeni malo črko (vključno s črkami z naglasi in strešicami). Razlikovanje med velikimi in malimi črkami ne deluje, če polje Razlikuj velike in male črke ni potrjeno; če to polje ni potrjeno, je ta izraz ekvivalenten [:alpha:].
[:upper:] 
pomeni veliko črko (vključno s črkami z naglasi in strešicami). Razlikovanje med velikimi in malimi črkami ne deluje, če polje Razlikuj velike in male črke ni potrjeno; če to polje ni potrjeno, je ta izraz ekvivalenten [:alpha:].


V vseh implementacijah izrazov POSIX v oklepajih je le malo konsistence (v OpenOffice.org ali drugod). Ena možnost je, da preprosto uporabite enostavne razrede znakov - namesto [[:digit:]] uporabite npr. [0-9].

Združevanje (...) in povratni sklici \x

Okrogle oklepaje in zaklepaje ( ) uporabljamo za združevanje pogojev.


Primer: res(en)? najde 'res' in 'resen'; tukaj (en)? pomeni 'enega ali nobenega en'.

Primer: (res|smeš)en najde tako 'resen' kot 'smešen'.


Vsaka skupina v oglatih oklepajih je določena tudi kot sklic in se lahko nanjo sklicujete kasneje v istem izrazu z uporabo 'povratnega sklica'. Povratni sklic '\1' pomeni 'kar se ujema s prvimi okroglimi oklepaji'; '\2' pomeni 'kar se ujema z drugimi okroglimi oklepaji'; in tako naprej.


Primer: (res|smeš) \1en najde le 'res resen' in 'smeš smešen', kajti '\1' predstavlja ali res ali smeš, kar pač najde. Zato 'res smešen' tudi ni zadetek.


Upoštevajte, da lahko z različicami, starejšimi od 2.4, povratne sklice uporabljate le v polju 'Išči', ne pa tudi v polju 'Zamenjaj z'.


Povratni sklici v polju 'Zamenjaj z' so bili implementirani z različico OOo2.4. Za starejše različice obstaja alternativna pot: uporabite Najdi vse, nato neposredno znova uporabite Najdi/Zamenjaj le v trenutnem izboru. S tem lahko (ali pa tudi ne) dosežete želen učinek.

(Tehnična opomba: to obravnava zadeva 15666. Povratni sklici v polju 'Zamenjaj z' so $1, $2, $3 itn. To je skladno s skladnjo v perlu, pa tudi z mehanizmom regularnih izrazov ICU, ki bo morda nekoč zamenjal obstoječi mehanizem regularnih izrazov v OpenOffice.org, s čimer bi razrešili številne težave.)

Tabulatorji, nove vrstice, novi odstavki \t \n $

Par znakov '\t' ima poseben pomen - predstavlja tabulatorski znak.

Primer: \trdeče se bo ujemalo z znakom tabulator, ki mu sledi beseda 'rdeče'.

V programu Writer lahko novo vrstico vnesete s kombinacijo tipk Shift+Enter. Znak za novo vrstico je tako vstavljen v besedilo in besedilo, ki sledi, se začne v novi vrstici. To ni enako novemu odstavku; kliknite Pogled-Nenatisljivi znaki, če bi radi videli razliko.

Vedenje regularnih izrazov OpenOffice.org pri ujemanju z oznakami za odstavek in novo vrstico je 'nenavadno'. Deloma je vzrok v dejstvu, da regularni izrazi v drugih programih običajno obdelujejo navadno, neoblikovano besedilo, medtem ko regularni izrazi OpenOffice.org razdelijo besedilo pri znakih za odstavek. Navedene so možnosti, ki so vam na voljo:

  • \n se ujema z novo vrstico (Shift+Enter), če ga vnesete v polje Išči. V tem kontekstu je enostavno obravnavan kot znak in ga je mogoče zamenjati s npr. presledkom ali z ničemer. Regularni izraz res\n se bo ujemal z res, ki mu sledi znak za novo vrstico - in če ga enostavno zamenjate z npr. laž, bo zamenjan tudi prelom vrstice. Regularni izraz res$ se bo ujemal z 'res', če mu bo sledila nova vrstica. V tem primeru z zamenjavo z 'laž' zamenjate le 'res' - in pustite prelom vrstice nedotaknjen.
  • res\nmorda poišče 'res', ki mu sledi prelom vrstice in nato 'morda'; zamenjava z npr. 'gotovo' odstrani prelom vrstice. Vendar niti res.morda niti res.*morda ne bo našla zadetka - pika . se ne ujema s prelomom vrstice.
  • $ sam zase se ujema z znakom za odstavek - in ga lahko zamenjate npr. s 'presledkom' ali pa z ničemer, če želite spojiti dva odstavka skupaj. Upoštevajte pa, da bo res$ poiskal 'res' na koncu odstavka, in če ga zamenjate z npr. presledkom, enostavno dobite presledek kjer je bil 'res' - in odstavki so nedotaknjeni - znak za odstavek se ne zamenja. Morda je bolje, da $ obravnavate ločeno kot posebno skladnjo, enkratno za OpenOffice.org.
  • ^$ se ujema s praznim odstavkom, ki ga lahko ne zamenjate z ničemer, s čimer odstranite prazen odstavek. Upoštevajte, da se ^res$ ujema z odstavkom, ki vsebuje le 'res' - zamenjava tega z ničemer pusti odstavek prazen - oznaki za odstavek na obeh koncih nista zamenjani. Morda pomaga, da obravnavate ^$ samega zase kot posebno skladnjo, enkratno za OpenOffice.org. Ker OpenOffice.org žal ni prevzel te skladnje, kot kaže ne morete uporabiti ^$ za iskanje praznih celic v tabeli (niti praznih celic Calc).
  • Če želite zamenjati vse prelome vrstic z znaki za odstavek, najprej poiščite \n z Najdi vse, da izberete vse znake za novo vrstico. Nato v polje Zamenjaj z vnesite \n, ki v tem polju predstavlja znak za odstavek; nato izberite Zamenjaj. To je razmeroma bizarno, vendar zdaj vsaj veste. Zapomnite si, da je \r interpretiran kot dejanski 'r', ne kot prehod na začetek vrstice.

Šestnajstiške kode \xXXXX

Zaporedje znakov, ki se začne z ' \x, ki mu sledi 4-mestno šestnajstiško število', pomeni znak s to kodo.

Primer: \x002A predstavlja znak za zvezdico, '*'.

Šestnajstiške kode lahko vidite v pogovornem oknu 'Vstavi-Poseben znak'.

Polje 'Zamenjaj z' \t \n &

Uporabnike včasih zmede, kaj lahko počnejo s poljem 'Zamenjaj z' v pogovornem oknu Najdi in zamenjaj.

V splošnem regularni izrazi ne delujejo v polju 'Zamenjaj z'. Znaki, ki jih vnesete, dejansko zamenjajo najdeno besedilo.

Trije konstrukti, ki pa vseeno delujejo:

  • \t vstavi tabulator, s katerim zamenja najdeno besedilo.
  • \n vstavi oznako za nov odstavek, s katerim zamenja najdeno besedilo. To je lahko nepričakovano, kajti \n v polju 'Išči' pomeni 'nov odstavek'! V nekaterih operacijskih sistemih je mogoče uporabiti obliko unicode za neposreden vnos znaka za novo vrstico (U+000A) v polje 'Zamenjaj z', kar ponuja rešitev, vendar ta ni univerzalna.
  • & vstavi celotno najdeno besedilo.

Primer: če ste iskali polom|traged, bi našli 'polom' ali 'traged'; če bi zadetke zamenjali z &ija, bi dobili 'polomija' ali 'tragedija'.

Upoštevajte, da povratni sklici ali podzadetki, kot so \1, \2, še niso na voljo v polju 'Zamenjaj z' - oglejte si opombo v zgornjem odseku Združevanje in povratni sklici.

Reševanje težav z regularnimi izrazi v OpenOffice.org

Če regularnih izrazov ne poznate, se zavedajte, da so lahko zelo zviti - če ne dobite pričakovanih rezultatov, preverite, da jih dovolj dobro razumete. Poskusite ohraniti regularne izraze karseda enostavne in nepretenciozne.


Tukaj je nekaj dodatnih zanimivih dejstev o regularnih izrazih OpenOffice.org:

  • Če naletite na nepričakovano vedenje, preverite ustrezen odsek tega kakOOojčka - večina vedenjskih posebnosti je dokumentirana tukaj.
  • Regularni izrazi so 'požrešni' - ujemali se bodo s karseda velikim deležem besedila. Razmislite o uporabi zavitih in oglatih oklepajev in zaklepajev; Primer: [^ ]{1,5}\> poišče 1 do 5 ne-preslednih znakov na koncu besede.
  • Bodite pozorni pri uporabi gumba Zamenjaj vse. Je nekaj redkih primerov, ko ta povzroči nepričakovane rezultate. Če želite npr. odstraniti prvi znak vsakega odstavka, bi lahko v polje 'Išči' vnesli ^., v 'Zamenjaj z' pa nič; s klikom 'Zamenjaj vse' bi pobrisali *celotno* besedilo, ne le prvega znaka vsakega odstavka. O tem razpravlja zadeva 82473. Druga pot je 'Najdi vse', nato 'Zamenjaj'; morda je najbolj varno, da z regularnimi izrazi sploh ne uporabljate gumba 'Zamenjaj vse'.

Nasveti in triki

Tukaj je nekaj primerov, ki vam morda pridejo prav:

\<([^ ]+)[ ]+\1

najde podvojene besede, ločene s presledki (upoštevajte, da mora biti pred vsakim ] presledek)

\<[1-9][0-9]*\>

najde desetiška števila

\<0[0-7]*\>

najde osmiška števila (z osnovo 8)

\<0x[A-Fa-f0-9]+\>

najde šestnajstiška števila (z osnovo 16)

[a-zA-Z0-9._%+\-]+@[a-zA-Z0-9.\-]+\.[a-z]{2,6}

najde večino e-poštnih naslovov (zanje ne obstaja popoln regularni izraz - to je praktična rešitev)

Zunanje povezave

Personal tools
In other languages