Regulaaravaldised

Järgmises tabelis on esitatud regulaaravaldised, mida saab kasutada sõnastiku loomisel kohandatud keele jaoks.

Üksuse nimi Tavalise regulaaravaldise sümbol Kasutusnäited ja selgitused
Suvaline märk . c.t — tähistab sõnu "cat", "cot" jne
Märk rühmast []

[b-d]ell — tähistab sõnu "bell", "cell", "dell" jne

[ty]ell — tähistab sõnu "tell" ja "yell"

Märk, mis pole rühmas [^]

[[^y]ell — tähistab sõnu "dell", "cell", "tell", kuid keelab sõna "yell"

[^n-s]ell — tähistab sõnu "bell", "cell", kuid keelab sõnad "nell", "oell", "pell", "qell", "rell" ja "sell"

Või | c(a|u)t — tähistab sõnu "cat" ja "cut"
0 või enam vastet * 10* — tähistab numbreid 1, 10, 100, 1000 jne
1 või enam vastet + 10+ — lubab numbrid 10, 100, 1000, kuid keelab numbri 1
Täht või number [0-9a-zA-Zа-яА-Я]

[0-9a-zA-Zа-яА-Я] — lubab suvalise üksiku märgi

[0-9a-zA-Zа-яА-Я]+ — lubab suvalise sõna

Ladina suurtäht [A-Z]
Ladina väiketäht [a-z]
Kirillitsa suurtäht [А-Я]
Kirillitsa väiketäht [а-я]
Number [0-9]
@ Reserveeritud.

Märkus.

  1. Regulaaravaldise sümboli kasutamiseks tavalise märgina sisesta selle ette kurakriips. Nt [t-v]x+ on tx, txx, txx, jne või ux, uxx jne, kuid \[t-v\]x+ on [t-v]x, [t-v]xx, [t-v]xxx jne,
  2. Regulaaravaldiste elementide rühmitamiseks kasuta sulgusid. Nt (a|b)+|c on c või suvaline kombinatsioon abbbaaabbb, ababab jne (sõna, mis on pikem kui 0 tähemärki, võib sisaldada suvalises järjestuses suvalise arvu a-sid ja b-sid), a|b+|c on aga a, c, ja b, bb, bbb jne.

Näited

Oled tuvastamas kolme veeruga tabelit: sünnikuupäevad, nimed ja e-posti aadressid. Sellisel juhul saad luua kaks uut keelt, andmed ja aadressi ning määrata nende jaoks järgmised regulaaravaldised.

Kuupäevade regulaaravaldised:

Päeva märkiv number võib koosneda ühest numbrist (1, 2 jne) või kahest numbrist (02, 12), kuid see ei saa olla null (00 või 0). Päeva regulaaravaldis peaks olema siis järgmine: ((|0)[1-9])|([1|2][0-9])|(30)|(31).

Kuu regulaaravaldis peaks olema siis järgmine: ((|0)[1-9])|(10)|(11)|(12).

Aasta regulaaravaldis peaks olema siis järgmine: ([19][0-9][0-9]|([0-9][0-9])|([20][0-9][0-9]|([0-9][0-9]).

Nüüd jääb ainult see kõik kokku panna ja eraldada numbrid punktiga (nt 1.03.1999). Punkt on regulaaravaldise sümbol, seega pead selle ette sisestama kurakriipsu (\).

Kuupäeva regulaaravaldis peaks olema siis järgmine:

((|0)[1-9])|([1|2][0-9])|(30)|(31)\.((|0)[1-9])|(10)|(11)|(12)\.((19)[0-9][0-9])|([0-9][0-9])|([20][0-9][0-9]|([0-9][0-9])

E-posti aadresside regulaaravaldis:

[a-zA-Z0-9_\-\.]+\@[a-z0-9\.\-]+

02.11.2018 16:19:22


Please leave your feedback about this article