Reguliere expressies

De onderstaande tabel toont de reguliere expressies die kunnen worden gebruikt om een woordenboek voor een aangepaste taal te maken.

Opmerking:

  1. Als u een symbool dat binnen reguliere expressies een speciale betekenis heeft, als een normaal teken wilt gebruiken, plaatst u er een backslash voor. Bijvoorbeeld,  [t-v]x+ staat voor tx, txx, txx, enz., ux, uxx, enz., maar \[t-v\]x+ staat voor [t-v]x, [t-v]xx, [t-v]xxx, enz.
  2. U kunt elementen uit reguliere expressies groeperen met behulp van haakjes. Bijvoorbeeld, (a|b)+|c staat voor c of om het even welke combinatie zoals abbbaaabbb, ababab, enz. (een woord van om het even welke lengte die niet gelijk is aan nul, en waarin a en b in om het even welke volgorde kunnen voorkomen), terwijl a|b+|c staat voor a, c, en b, bb, bbb, enz.

Voorbeelden

Stel dat u een tabel herkent met drie kolommen: geboortedatums, namen en e-mailadressen. In dit geval kunt u twee nieuwe talen maken (datums en adressen) en de volgende reguliere expressies ervoor specificeren.

Reguliere expressies voor datums:

Het nummer dat voor een dag staat kan uit één cijfer (1, 2 enz.) of twee cijfers (02, 12) bestaan, maar kan niet nul (0 of 00) zijn. De reguliere expressie voor de dag hoort er dus als volgt uit te zien: ((|0)[1-9])|([1|2][0-9])|(30)|(31).

De reguliere expressie voor de maand hoort er als volgt uit te zien: ((|0)[1-9])|(10)|(11)|(12).

De reguliere expressie voor het jaar hoort er als volgt uit te zien: ([19][0-9][0-9]|([0-9][0-9])|([20][0-9][0-9]|([0-9][0-9]).

Alles wat u nog moet doen is dit allemaal combineren en de nummers onderling door een punt scheiden (zoals in 1.03.1999). De punt wordt ook voor het vormen van reguliere expressies gebruikt, dus moet u er een backslash (\) voor plaatsen. De reguliere expressie voor de volledige datum hoort er dus als volgt uit te zien:

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

Reguliere expressie voor een e-mailadres:

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

1/14/2020 5:26:20 PM


Please leave your feedback about this article