下表列出了所有的元字符和對它們的一個簡短的描述。
元字符 |
|
描述 |
|
|
|
. |
|
匹配任何單個字符。例如正則表達(dá)式r.t匹配這些字符串:rat、rut、r t,但是不匹配root。 |
$ |
|
匹配行結(jié)束符。例如正則表達(dá)式weasel$ 能夠匹配字符串"He's a weasel"的末尾,但是不能匹配字符串"They are a bunch of weasels."。 |
^ |
|
匹配一行的開始。例如正則表達(dá)式^When in能夠匹配字符串"When in the course of human events"的開始,但是不能匹配"What and When in the"。 |
* |
|
匹配0或多個正好在它之前的那個字符。例如正則表達(dá)式.*意味著能夠匹配任意數(shù)量的任何字符。 |
\ |
|
這是引用府,用來將這里列出的這些元字符當(dāng)作普通的字符來進(jìn)行匹配。例如正則表達(dá)式\$被用來匹配美元符號,而不是行尾,類似的,正則表達(dá)式\.用來匹配點(diǎn)字符,而不是任何字符的通配符。 |
[ ]
[c1-c2]
[^c1-c2] |
|
匹配括號中的任何一個字符。例如正則表達(dá)式r[aou]t匹配rat、rot和rut,但是不匹配ret。可以在括號中使用連字符-來指定字符的區(qū)間,例如正則表達(dá)式[0-9]可以匹配任何數(shù)字字符;還可以制定多個區(qū)間,例如正則表達(dá)式[A-Za-z]可以匹配任何大小寫字母。另一個重要的用法是“排除”,要想匹配除了指定區(qū)間之外的字符——也就是所謂的補(bǔ)集——在左邊的括號和第一個字符之間使用^字符,例如正則表達(dá)式[^269A-Z] 將匹配除了2、6、9和所有大寫字母之外的任何字符。 |
\< \> |
|
匹配詞(word)的開始(\<)和結(jié)束(\>)。例如正則表達(dá)式\<the能夠匹配字符串"for the wise"中的"the",但是不能匹配字符串"otherwise"中的"the"。注意:這個元字符不是所有的軟件都支持的。 |
\( \) |
|
將 \( 和 \) 之間的表達(dá)式定義為“組”(group),并且將匹配這個表達(dá)式的字符保存到一個臨時區(qū)域(一個正則表達(dá)式中最多可以保存9個),它們可以用 \1 到\9 的符號來引用。 |
| |
|
將兩個匹配條件進(jìn)行邏輯“或”(Or)運(yùn)算。例如正則表達(dá)式(him|her) 匹配"it belongs to him"和"it belongs to her",但是不能匹配"it belongs to them."。注意:這個元字符不是所有的軟件都支持的。 |
+ |
|
匹配1或多個正好在它之前的那個字符。例如正則表達(dá)式9+匹配9、99、999等。注意:這個元字符不是所有的軟件都支持的。 |
? |
|
匹配0或1個正好在它之前的那個字符。注意:這個元字符不是所有的軟件都支持的。 |
\{i\}
\{i,j\} |
|
匹配指定數(shù)目的字符,這些字符是在它之前的表達(dá)式定義的。例如正則表達(dá)式A[0-9]\{3\} 能夠匹配字符"A"后面跟著正好3個數(shù)字字符的串,例如A123、A348等,但是不匹配A1234。而正則表達(dá)式[0-9]\{4,6\} 匹配連續(xù)的任意4個、5個或者6個數(shù)字字符。注意:這個元字符不是所有的軟件都支持的。 |
最簡單的元字符是點(diǎn),它能夠匹配任何單個字符(注意不包括新行符)。