Kasutaja:Arean-Pärt Alango/Regulaaravaldis

Regulaaravaldis muuda

Regulaaravaldis[1] (inglise keeles regular expression, regex or regexp) on tähemärkide kombinatsioon, mis kirjeldab mingit kindlat sõnemustrit. Tihti kasutatakse selliseid otsingumustreid sisendi korrektsuse kontrollimiseks või otsingute teostamiseks mingis andmebaasist. Mõned näited regulaaravaldiste rakendamisest on näiteks:

  • Veebilehtedel väljale, kuhu kasutaja peab sisestama meiliaadressi, sisestatu korrektsuse kontrollimine
  • Igasuguste muude universaalsel kujul andmete, nagu näiteks pangakontode, asukohakoodide või telefoninumbrite ja muude korrektsuse kontrollimine
  • Tekstist spetsiifilise info ammendamine, nagu näiteks kuupäeva võtmine ühest tekstist ja siis selle teise teksti ümber kirjutamine
  • URL aadresside sisselugemine HTML või teisest tekstifailist
  • Igasugused muud tekstidega seotud ülesanded, nagu näiteks tühikute asendamine millegi muuga või koolonite asendamine semikoolonite jne.

Regex literal ja Regex constructor muuda

Regulaaravaldiste kirjutamiseks on kaks võimalust. Regulaaravaldise võib kirjutada literaalina (inglise keeles literal) või konstruktoriga (inglise keeles constructor). Literaalide puhul paneme tavamärkide abil kirja üheselt määratud otsitava mustri, nagu näiteks ´abc´. Sellele vastab ainult täpselt samasugune väikeste tähtedega ´abc´ muster. Siinkohal tuleb tähele panna, et regex otsingud on väikeste ja suurte tähtede suhtes tundlikud, ehk see otsing ei leiaks ´ABC´.

Konstruktorite puhul paneme avaldise kirja kasutades metamärke. Need on erilise tähendusega tähemärgid, mis vastavad tavaliselt rohkem kui ühele tähemärgile.

Literaalidega teksti töötlemise puhul on programmil käivitusaegselt parem jõudlus, kuid konstruktoritega on paindlikumad otsinguvõimalused.

Välislingid muuda

  1. "Regular expressions". www.regular-expressions.info.