Regulárne výrazy

V nižšie uvedenej tabuľke sa nachádzajú regulárne výrazy, ktoré možno použiť na vytvorenie slovníka vlastného jazyka.

Poznámka:

  1. Ak chcete použiť symbol regulárneho výrazu ako normálny znak, napíšte pred ním opačnú lomku. Napríklad [t-v]x+ reprezentuje slová ako tx, txx, atď., ux, uxx, atď., ale \[t-v\]x+ reprezentuje slová ako [t-v]x, [t-v]xx, [t-v]xxx, atď.
  2. Na spojenie elementov regulárnych výrazov do skupín použite zátvorky. Napríklad, (a|b)+|c reprezentuje písmeno c alebo ľubovoľné kombinácie ako abbbaaabbb, ababab, atď. (slovo ľubovoľnej nenulovej dĺžky, v ktorom môže byť ľubovoľný počet písmen „a“ alebo „b“ v akomkoľvek poradí), kým a|b+|c reprezentuje a, c, a tiež b, bb, bbb, atď.

Príklady

Predpokladajme, že rozpoznávate tabuľku s tromi stĺpcami: dátumy narodenia, mená a e-mailové adresy. V tomto prípade si môžete vytvoriť dva nové jazyky, dátumy a adresy, a nastaviť pre ne nasledujúce regulárne výrazy.

Regulárne výrazy pre dátumy:

Číslo označujúce deň môže pozostávať z jednej číslice (1, 2 atď.) alebo z dvoch číslic (napr. 02, 12), ale nemôže to byť nula (00 alebo 0). Regulárny výraz pre deň by mal potom vyzerať takto: ((|0)[1-9])|([1|2][0-9])|(30)|(31).

Regulárny výraz pre mesiac by mal vyzerať takto: ((|0)[1-9])|(10)|(11)|(12).

Regulárny výraz pre rok by mal vyzerať takto: ([19][0-9][0-9]|([0-9][0-9])|([20][0-9][0-9]|([0-9][0-9]).

Teraz to potrebujeme dať všetko dokopy a oddeliť čísla bodkami (napr. 1.03.1999). Bodka je symbol regulárneho výrazu, takže pred ňu musíte vložiť opačnú lomku (\). Regulárny výraz pre úplný dátum by mal potom vyzerať takto:

((|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])

Regulárny výraz pre e-mailovú adresu:

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

14.01.2020 17:26:21


Please leave your feedback about this article