Regulaaravaldis: Difference between revisions
Line 20: | Line 20: | ||
'''Tagasiviited''' | '''Tagasiviited''' | ||
'''Näide''' | |||
<pre></pre> | |||
==Kasutatud kirjandus== | ==Kasutatud kirjandus== |
Revision as of 19:42, 26 November 2011
Autor: Carolys Kallas A22 2011
Regulaaravaldised on teksti otsimiseks ja asendamiseks ettenähtud keel. Kõige lihtsam regulaaravaldis on suvaline sõna. Regulaaravaldise otsing on alati alamstringi otsing. [4]
Arvutiga töötamises regulaaravaldis pakub lühikese ja paindliku vahendi tekstistringide (nagu kindlad märgid, sõnad, märgimustrid) kokkusobitamiseks. Regulaaravaldise lühendite seas on regex ja regexp.[3] UNIXis on olemas regulaaravaldiste mõiste, mis laseb malli kasutada hoopis laiemalt kui failinimedes. Regulaaravaldisi tunnistavad üpris mitmed UNIXi utiliidid, sed, grep ja awk on ehk kõige tüüpilisemad näited.[1]
Regulaaravaldis Unixis
UNIXis kasutatav käsk grep on kõige lihtsam vahend regulaaravaldiste kasutamiseks. Grep võimaldab moodustada lihtsaid regulaaravaldisi ning otsida mustrile vastavaid sõnu etteantud failide hulgast. Grep on n.ö sissejuhatus Awk, Sedi ja Perli edasiõppimisel.
UNIXi tekstitoimetis ed saab kasutada konstruktsiooni g/re/p, mis globaalselt (g) otsib üle kogu teksti regulaaravaldisega (re, regular expression) sobivaid sõnu ning väljastab (p, print) read, mis sisaldavad leitud sõna. Seda konstruktsiooni läks vaja nii tihti, et tehtigi sellele omaette käsk UNIXis, nimega grep.[5]
Neli moodsas regulaaravaldises kasutatavat põhimõtet
Mustrid
Mustrid koosnevad literaalsetest stringidest ja märgiklassides. Mustrid võivad sisaldada alammustreid, mis kujutavad endast sulgudes antud mustrit. [6]
Eeldused
Kvantorid
Tagasiviited
Näide
Kasutatud kirjandus
1. UNIX juhend - Regulaaravaldised http://www.eenet.ee/EENet/assets/docs/abs/mall.html#regexp
2. Kuutõrvaja http://kuutorvaja.eenet.ee/programmeerimine/regulaaravaldised.html
3. Regular expression http://en.wikipedia.org/wiki/Regular_expression
4. Antti Andreimann - Linuxi administreerimine edasijõudnutele http://enos.itcollege.ee/~aandreim/linux/2006_advanced/Loeng_3_Regulaaravaldised.odp.
5. Regulaaravaldiste kasutamine - http://www.quretec.com/u/vilo/edu/2003-04/ATABI_2004k/Languages/Regexpv2.html#_Toc2487298
6. Regulaaravaldised mustrid - http://docs.kde.org/development/et/kdesdk/kate/regex-patterns.html