測試**:普通字元
沒有特殊限定的時候匹配乙個相同的字元
簡單轉義字元
\n換行符
\t製表符
\字元字元本身
標準字元集合
能夠與多種字元匹配的表示式
區分大小寫,大寫取反
\d0~9中任一字元
\w字母數字下劃線,a~z,a~z,0~9,_
\s 空格、製表符、換行符等任一空白符
.任何乙個字元
自定義字元集合
匹配方式,匹配方括號中的任一字元
[ab5@]
匹配"a"、"b"、"5"或"@"
[^abc]
匹配"a"、"b"、"c"以外的任一字元
[f-k]
匹配"f"~"k"中的任一字元
[^a-f0-3]
匹配"a"~"f"、"0"~"3"以外的任一字元
特殊符號,被包含到中括號中,失去特殊意義,除"^"和"-"以外
標準字符集,除小數點外,如果被包含於中括號,自定義字符集包含該集合。如:
量詞修飾匹配次數的特殊符號
表示式重複n次
表示式至少n次,至多m次
表示式至少n次
?匹配0或1次
+至少1次
*0次到任意次
匹配次數中的貪婪模式(匹配字元越多與好,預設)
匹配次數中的非貪婪模式(匹配字元越少越好,修飾匹配次數的特殊符號後面加"?",例:"\d?")
字元邊界
字元所處的位置,零寬(不佔位)
^字串開始
$字串結束
\b單詞邊界(前面和後面的字元不全是\w)
正規表示式匹配模式
ignorecase忽略大小寫模式
singleline單行模式
multiline多行模式
選擇符和分組
|分支結構,表示「或」的關係
()捕獲組:1、括號中的作為整體
2、取結果時,括號中的內容可以單獨得到
3、從左括號開始編號,第乙個「(」是1,0為整個表示式
(?:expression)
非捕獲組,不儲存()中的資訊,節省記憶體開支
反向引用(\nnn)
預搜尋(零寬斷言、環視)
對子表示式匹配,匹配內容不計入匹配結果,零寬
(?=exp)
後面能匹配表示式exp
(?<=exp)
前面能匹配表示式exp
(?!exp)
後面不能匹配表示式exp
(?前面不能匹配表示式exp
正規表示式 正規表示式 總結
非負整數 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正規表示式 編寫正規表示式
為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...