特殊字元
特別字元
描述( )
標記乙個子表示式的開始和結束位置。
.匹配除換行符 \n 之外的任何單字元。
[xyz]
字元集合。
匹配所包含的任意乙個字元。
例如, '[abc]' 可以匹配 "plain" 中的 'a'。
[^xyz]
負值字元集合。匹配未包含的任意字元。
例如, '[^abc]' 可以匹配 "plain" 中的'p'、'l'、'i'、'n'。
[a-z]
字元範圍。匹配指定範圍內的任意字元。
例如,'[a-z]' 可以匹配 'a' 到 'z' 範圍內的任意小寫字母字元。
[^a-z]
負值字元範圍。匹配任何不在指定範圍內的任意字元。
例如,'[^a-z]' 可以匹配任何不在 'a' 到 'z' 範圍內的任意字元。
\將下乙個字元標記為或特殊字元、或原義字元、或向後引用、或八進位制轉義符。
或 或
共6種。 字元
描述*匹配前面的子表示式零次或多次。
例如,zo* 能匹配 "z" 以及 "zoo"。* 等價於。
+匹配前面的子表示式一次或多次。
例如,'zo+' 能匹配 "zo" 以及 "zoo",但不能匹配 "z"。+ 等價於 。
?匹配前面的子表示式零次或一次。
例如,"do(es)?" 可以匹配 "do" 、 "does" 中的 "does" 、 "doxy" 中的 "do" 。? 等價於 。
n 是乙個非負整數。匹配確定的 n 次。
例如,'o' 不能匹配 "bob" 中的 'o',但是能匹配 "food" 中的兩個 o。
n 是乙個非負整數。至少匹配n 次。
例如,'o' 不能匹配 "bob" 中的 'o',但能匹配 "foooood" 中的所有 o。'o' 等價於 'o+'。'o' 則等價於 'o*'。
m 和 n 均為非負整數,其中n <= m。最少匹配 n 次且最多匹配 m 次。
例如,"o" 將匹配 "fooooood" 中的前三個 o。'o' 等價於 'o?'。請注意在逗號和兩個數之間不能有空格。
定位符字元描述
^匹配輸入字串開始的位置。
$匹配輸入字串結尾的位置。
\b匹配乙個字邊界,即字與空格間的位置。
例如, 'er\b' 可以匹配"never" 中的 'er',但不能匹配 "verb" 中的 'er'。
\b非字邊界匹配。
例如,'er\b' 能匹配 "verb" 中的 'er',但不能匹配 "never" 中的 'er'。
示例正規表示式
描述/\b([a-z]+) \1\b/gi
乙個單詞連續出現的位置。
/(\w+):\/\/([^/:]+)(:\d*)?([^# ]*)/
將乙個url解析為協議、域、埠及相對路徑。
例如:^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
email位址
^[a-za-z][a-za-z0-9_]$
帳號是否合法(字母開頭,允許5-16位元組,允許字母數字下劃線)
\d+\.\d+\.\d+\.\d+
ip位址
/^(?:chapter|section) [1-9][0-9]$/
定位章節的位置。
/ter\b/
可匹配chapter,而不能匹配terminal。
/\bapt/
可匹配chapter,而不能匹配aptitude。
/windows(?=95 |98 |nt )/
可匹配windows95或windows98或windowsnt,當找到乙個匹配後,從windows後面開始進行下一次的檢索匹配。
/^\s*$/
匹配空行。
/\d-\d/
驗證由兩位數字、乙個連字元再加 5 位數字組成的 id 號。
/<\s*(\s+)(\s[^>]*)?>[\s\s]*<\s*\/\1\s*>/
匹配 html 標記。
正規表示式 正規表示式 總結
非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 非正浮點數 d d 0 0 負浮點數 正浮點數正則式 英文本串 a za z...
正規表示式 表示式
網域名稱 a za z0 9 a za z0 9 a za z0 9 a za z0 9 interneturl a za z s 或 http w w w 手機號碼 13 0 9 14 5 7 15 0 1 2 3 5 6 7 8 9 18 0 1 2 3 5 6 7 8 9 d 號碼 x x x...
Linux正規表示式 編寫正規表示式
為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...