乙個同事很久以前寫的使用正規表示式說明
1、「|」,表示2選1。
2、原子量化。
最少匹配n次,但不多於m次。
最少配置n次。
正好匹配n次。
* 匹配0或多次。
+ 匹配1或多次。
? 匹配0或1次。
3、原子。
a、在括弧內的規則表示式。
b、乙個「.」匹配除了「\n」之外的任何內容。
c、乙個「^」是乙個null符號,匹配一字串或一行的開始。
d、乙個「$」是乙個null符號,匹配一字串或一行的結束。
e、字元種類(如[abcd])和範圍(如[a-z])
特殊的轉義字元在乙個字元種類中有效(除了後引用和邊界)。
「\b」是在乙個字元種類中的空格。
f、特殊的轉義字元
\b null符號,匹配一單詞的邊界(\w在一邊,\w在另一邊)。
\b null符號,匹配一非單詞的邊界。
\a 只配置字串的開始。
\z 只匹配字串的結束(或結束處的換行前)。
\n 換行。
\r 回車。
\t tab。
\f 走紙。
\d 數字 [0-9]。
\d 非字元 [^0-9]。
\w 乙個單詞字元 [0-9a-z_a-z]
\w 乙個非單詞字元 [^0-9z-z_a-z]。
\s 乙個空格字元 [ \t\n\r\f]。
\s 乙個非空格字元 [^ \t\n\r\f]。
\xnn 字元的十六進製制表示。
\cd 匹配相應的控制字元。
\nn 或 \nnn 字元的八進位制表示,除了後引用。乙個
\1,\2,\3等等 匹配任何第
一、第二、第三等等已經匹配了的括弧內的組。這稱為「後引用」。
如果沒有相應的組,該號碼被解釋成乙個字元的八進位制表示。
\0 匹配null字元。
任何其他轉義字元匹配它自己。
4、括弧內的表示式,作為子模板組進行匹配,並被儲存通過某種方法使用。
預設,乙個量化子模板是「貪婪的」。換句話說,它在沒有導致模板剩餘部分不匹配的情況下盡可能地匹配多次。
為了改變這種情況,使得在沒有導致模板剩餘部分不匹配的情況下,盡可能地匹配少次,可以使用「?」在量化詞之後。
如「*?」,「+?」等。
正規表示式 正規表示式 總結
非負整數 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正規表示式 編寫正規表示式
為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...