Wyrażenia regularne

Poniższa tabela zawiera wyrażenia regularne, których można użyć przy tworzeniu nowego języka.

Element Symbol w wyrażeniu regularnym Przykłady użycia i wyjaśnienia
Dowolny znak . c.t – pasuje do “cat”, “cot” itp.
Znak z grupy [] [b-d]ell – pasuje do słów “bell”, “cell”, “dell” itp.
[ty]ell – pasuje do słów “tell” i “yell”
Znak spoza grupy [^] [^y]ell – pasuje do słów “dell”, “cell”, “tell”, ale nie do “yell”
[^n-s]ell – pasuje do słów “bell”, “cell”, ale nie do “nell”, “oell”, “pell”, “qell”, “rell” i “sell”
Lub | c(a|u)t – pasuje do “cat” i “cut”
0 lub więcej dopasowań * 10* – pasuje do liczb 1, 10, 100, 1000 itp.
1 lub więcej dopasowań + 10+ – pasuje do 10, 100, 1000 itp., ale nie do 1.
Litera lub cyfra [0-9a-zA-Zа-яА-Я] [0-9a-zA-Zа-яА-Я] – dowolny pojedynczy znak
[0-9a-zA-Zа-яА-Я]+ – dowolne słowo
Duża litera łacińska [A-Z]  
Mała litera łacińska  [a-z]  
Wielka litera cyrylicy  [А-Я]  
Mała litera cyrylicy  [а-я]  
Cyfra [0-9]  
Spacja \s  
  @ Zastrzeżone.

Uwaga.

  1. Aby użyć symbolu wyrażenia regularnego jako normalnego znaku, należy go poprzedzić znakiem ukośnika (\). Na przykład: [t-v]x+ pasuje do słów tx, txx, txx itp., ux, uxx itp., ale \[t-v\]x+ pasuje do słów [t-v]x, [t-v]xx, [t-v]xxx itp.
  2. Aby pogrupować elementy wyrażenia regularnego, użyj nawiasów. Na przykład (a|b)+|c pasuje do c i kombinacji typu abbbaaabbb, ababab itp. (słowo dowolnej długości, w którym może zawierać się dowolna liczba liter a i b w dowolnej kolejności), a a|b+|c pasuje do a, c, oraz b, bb, bbb itp.

Przykłady

Wyrażenie regularne dla dat:

Liczba oznaczająca dzień może się składać z jednej cyfry (1, 2 itp.) lub z dwóch cyfr (02, 12), ale nie może być zerem (00 lub 0). Wyrażenie regularne pasujące do numeru dnia powinno wyglądać następująco: ((|0)[1-9])|([1|2][0-9])|(30)|(31).

Wyrażenie regularne pasujące do numeru miesiąca: ((|0)[1-9])|(10)|(11)|(12).

Wyrażenie regularne pasujące do numeru roku: ([19][0-9][0-9]|([0-9][0-9])|([20][0-9][0-9]|([0-9][0-9]).

Należy jeszcze połączyć te wyrażenia w jedno i oddzielić liczby kropką (jak w przykładzie: 01.03.1999) Kropka jest znakiem wyrażenia regularnego, więc należy przed nią wstawić znak ukośnika (\). Kompletne wyrażenie regularne przybierze wtedy następującą formę:

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

Wyrażenie regularne w odniesieniu do adresów e-mail:

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

Wyrażenia regularne