最近由於工作需要,再讀了一遍《正規表示式必知必會》,這樣一本小書,很快讀完了,對於正規表示式有更深的了解,的確很強大,值得學習。
總結了一下,結果如下:
正規表示式的兩個用途:搜尋和替換
. 匹配任何乙個單個的字元
字元集合區間
- 連字元
^ 取非匹配
特殊元字元:
[\b] 回退
\f 換頁符
\n 換行符
\r 回車符
\t 製表符
\v 垂直製表符
\d 任何乙個數字字元 [0-9]
\d [^0-9]
\w [a-za-z0-9_]
\w [^a-za-z0-9_]
\s [\f\n\r\t\v]
\s [^\f\n\r\t\v]
+ 匹配乙個或多個字元
* 匹配零個或多個字元
? 匹配零個或乙個字元
精確匹配出現n次
精確匹配n次到m次
至少匹配n次
以上的方法均是貪婪型的,只要在後面加上乙個?,變成懶惰型的
界限:\b 指定單詞的邊界
\b 指定不是單詞的邊界
^ 字串開頭
$ 字串結尾
?m 改變其他元字元行為的元字串行,必須出現在整個模式的最前面
\n 回溯引用
$1 替換時的回溯引用
?= 向前查詢,以?=為開頭的子表示式,即最後的內容是否出現在匹配的範圍內
?<= 向後查詢
?! 負向前查詢,向前查詢不匹配的
?正規表示式的條件:
?( backreference)true-regex) , 其中?表明這是乙個條件,括號裡的 backreference直接使用數字表示,代表只有在backreference存在時才會被執行的子表示式
?(backreference)true-regex|false-regex)
常用正規表示式:
正規表示式必知必會
1 字元 語法說明 表示式可匹配 任意普通字元 匹配自身 abcabc 轉義字元 a b a b.匹配除了換行符以外的任何字元 相當於 w的加強版 w看下面一張表 可匹配空格 a c1b 字符集 可以都寫出來也可以寫個範圍如 a z 第乙個字元如果是 表示取反,如 a 表示a除外的所有字元,如果字符...
正規表示式必知必會
1.exactly n of the preceding element.只能匹配連續n個字元 n or more of the preceding element.可以匹配n,或任意大於n個連續字元。貪婪匹配,會盡量匹配多的字元 between m and n of the preceding e...
正規表示式必知必會 附
正規表示式測試器 html注釋 基本元字元 匹配任意單個字元 邏輯或操作符 匹配字元集合中的乙個字元 對字元集合求非 在 中定義乙個區間 對下乙個字元轉義 數量元字元 匹配前乙個字元 子表示式 的零次或多次重複 懶惰型版本 匹配前乙個字元 子表示式 的一次或多次重複 懶惰型版本 匹配前乙個字元 子表...