\ 轉義字元
( ) 分組標記,內部只能使用 | 操作符
. 匹配任何單個字元,包括空格
[ ] 匹配括號中的任何乙個字元,括號內可以使用連字元「-」來指定字元的區間,比如 [0-9] 匹配任何數字,[a-za-z] 匹配任何字母
| 將兩個匹配條件進行邏輯「或」運算
? 將它前面的子表示式 0 或 1 次
+ 將它之前的子表示式匹配 n 次,n為任意正整數
* 將它之前的子表示式匹配 n 次,n為任意自然數
將它之前的子表示式匹配指定的次數
將它之前的子表示式匹配不少於指定的次數
將它之前的子表示式匹配不少於指定的下限次,不多於指定的上限次
^ 將它之後的子表示式作為一行的開始
^ 非 (注意這個符號有兩種不同含義)
$ 將它之後的子表示式作為一行的結尾
\d 任意數字,等價於[0-9]
\d 非數字,等同於^[0-9]
\s 換行符、tab製表符等空白字元
\s 非空白字元
\w 匹配字母或數字或下劃線或漢字,即能組成單詞的字元
\w 非\w ,等價於^[\w]
貪婪(greedy)匹配:盡可能多的匹配,直到「再貪婪一點兒」其後的匹配模式就沒法匹配為止
+、*的匹配預設是貪婪的
在+、*後新增 ? 就變成非貪婪模式(? 的另外乙個用途):讓其後的匹配模式盡早的匹配。
正規表示式 正規表示式 總結
非負整數 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正規表示式 編寫正規表示式
為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...