Regularis kifejezesek

Az alábbi táblázatban azoknak a reguláris kifejezéseknek a listája látható, melyek egy egyéni nyelv szótárának létrehozásához használhatók fel.

Megnevezés A reguláris kifejezés szokásos szimbóluma Felhasználási példák és magyarázatuk
Bármilyen karakter . c.t — a "cat," "cot," stb. jelölésére
Karakter a csoportból []

[b-d]ell — a "bell," "cell," "dell," stb. jelölésére

[ty]ell — a "tell" és a "yell" jelölésére

Karakter nem a csoportból [^]

[^y]ell — a "dell," "cell," "tell," jelölésére, viszont a "yell" tiltására

[^n-s]ell — a "bell," "cell," jelölésére, viszont a "nell," "oell," "pell," "qell," "rell," és a "sell" tiltására

Vagy | c(a|u)t — a "cat" és a "cut" jelölése
0 vagy több egyezés * 10* — az 1, 10, 100, 1000, stb. szám jelölése
1 vagy több egyezés + 10+ — engedélyezi a 10, 100, 1000, stb. számot, viszont tiltja az 1-et
Betű vagy szám [0-9a-zA-Zа-яА-Я]

[0-9a-zA-Zа-яА-Я] — egy tetszőleges karaktert engedélyez

[0-9a-zA-Zа-яА-Я]+ — bármilyen szót engedélyez

Latin nagybetű [A-Z]
Latin kisbetű [a-z]
Cirill nagybetű [А-Я]
Cirill kisbetű [а-я]
Szám [0-9]
@ Foglalt.

Megjegyzés:

  1. Valamely reguláris kifejezés szimbólumának normál karakterként történő használatához kezdje fordított perjellel. Például: az [t-v]x+ jelentése tx, txx, txx, etc., ux, uxx, stb., viszont a \[t-v\]x+ jelentése [t-v]x, [t-v]xx, [t-v]xxx, stb.
  2. A reguláris kifejezés elemeinek csoportosításához használjon kerek zárójelet. Például az (a|b)+|c jelentése c vagy bármilyen kombináció, mint az abbbaaabbb, ababab, stb. (egy nem nulla hosszúságú szó, melyben bármennyi a és b lehet bármilyen sorrendben), míg az a|b+|c jelentése a, c, és b, bb, bbb, stb.

Példák

Tételezzük fel, hogy Ön egy háromoszlopos táblázatot ismer fel: születési dátumok, nevek és e-mail címek Ebben az esetben két új nyelvet, Data és Address, hozhat létre, és a következő reguláris kifejezést adhatja meg hozzájuk.

Reguláris kifejezések dátumokhoz:

Valamely napot jelölő szám egy (1, 2, stb.) vagy két számból (02, 12) állhat, viszont nem lehet nulla (00 vagy 0). A nap reguláris kifejezésének ilyesfélének kell lennie: ((|0)[1-9])|([1|2][0-9])|(30)|(31).

A hónap reguláris kifejezésének ilyesfélének kell lennie: ((|0)[1-9])|(10)|(11)|(12).

Az év reguláris kifejezésének ilyesfélének kell lennie: ([19][0-9][0-9]|([0-9][0-9])|([20][0-9][0-9]|([0-9][0-9]).

Most mindössze annyit kell tennünk, hogy ezt mindet kombináljuk, és a számokat ponttal tagoljuk (pl. 1.03.1999). A pont egy reguláris kifejezés szimbólum, ezért tegyen elé fordított perjelet (\).

A teljes dátum reguláris kifejezésének ilyesfélének kell lennie:

((|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áris kifejezések e-mail címekhez:

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

11/2/2018 4:19:24 PM


Please leave your feedback about this article