靈活性、邏輯性和功能性都很強;
主要應用物件是文字;
可以迅速地用極簡單的方式達到字串的複雜控制;
晦澀難懂。
元字元
字元說明
.匹配除了換行符以外的任意單個字元
\d匹配數字
\d匹配非數字
\w匹配字母,數字,下劃線
\w匹配任意不是字母,數字,下劃線的字元
\s匹配任意空白字元(\r,\n,\t,空格)
\s匹配任意非空白字元
\b匹配單詞的邊界(開始或者結束)
\b匹配非單詞邊界
\n匹配換行符
\t匹配製表符
|將兩個匹配條件進行邏輯「或」(or)運算
a|b匹配a或者b
^匹配字串的開始
$匹配字串的結尾
修飾符
字元說明
iignore - 不區分大小寫
g全域性匹配
mmultiline- 多行匹配,邊界字元 ^ 和 $ 匹配每一行的開頭和結尾,記住是多行,而不是整個字串的開頭和結尾
s特殊字元圓點 . 中包含換行符 \n
分組符
字元說明
[xyz]
匹配字符集中任意乙個字元
[^xyz]
匹配非字符集中任意乙個字元
[a-z]
指定匹配範圍,[a-z]匹配任意乙個小寫字母
[^a-z]
匹配任意乙個非小寫英文本母的字元
[0-9]
匹配任意乙個數字 同等於\d
[^0-9]
匹配任意非數字
[0-9a-za-z_]
匹配字母、數字、下劃線,同等於\w
()組,主要應用在限制多選結構的範圍/分組/捕獲文字/環視/特殊模式處理量詞
字元說明
??重複零次或一次,但盡可能少的重複
+?重複一次或者多次,但盡可能少的重複
*?重複任意次,但盡可能少的重複
*重複零次或任意多次
重複n次
?重複m-n次,但盡可能少的重複
?重複m次以上,但盡可能少的重複
貪婪匹配和懶惰匹配
貪婪匹配:匹配盡可能多的字元。
懶惰匹配:匹配盡可能少的字元。限定符都可以被轉化為懶惰匹配模式,只要在它後面加上乙個問號?,如*屬於貪婪匹配,*?屬於懶惰就載入。
正規表示式 正規表示式 總結
非負整數 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正規表示式 編寫正規表示式
為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...