\d (digital) 匹配乙個數字字元。= [0-9]
\d = [^0-9]
\w (word) 匹配包括下劃線的任何單詞字元。=[a-za-z0-9_]。
\w =[^a-za-z0-9_]
\s (space) 匹配任何空白字元,包括空格、製表符、換頁符等等。= [ \f\n\r\t\v]
\s 匹配任何非空白字元。= [^ \f\n\r\t\v]
.(點號) 任一字元
[...] 括號中的任一字元
[^…] 非括號中的任一字元
***********************************=
匹配前面的字元或組串出現的次數區間
? 匹配前面的字元0次或1次
+ 匹配前面的字元至少1次
* 匹配前面的字元至少0次
如果上面的基礎上,後面跟乙個「?」,則表示取區間開始基數為判斷準則
例子:字串:1abc31s
reg:\d+
mach:
reg:\d+?
mach:
^ 匹配行首(^sel)
$ 匹配行尾(fin$)
***********************************=
| 指定字元替換,即該位置可以是|兩邊的任乙個表示式
\ 轉義
如:\. 匹配「.」
\* 匹配「*」
\( 匹配「(」
\) 匹配」)」
\? 匹配「?「
\+ 匹配「+「
\| 匹配「|「
\ 匹配「}「
\^ 匹配「^「
\$ 匹配「$「
\n 匹配換行符
\r 匹配回車
\t 匹配tab鍵
\v 匹配垂直製表符
\f 匹配換頁符
() 捕獲符號
***********************************=
(exp) 匹配exp,並捕獲文字到自動命名的組裡
(?exp) 匹配exp,並捕獲文字到名稱為name的組裡,也可以寫成(?'name'exp)
(?:exp) 匹配exp,不捕獲匹配的文字,也不給此分組分配組號
零寬斷言(定義:像\b,^,$那樣用於指定乙個位置,這個位置應該滿足一定的條件(即斷言),因此它們也
被稱為零寬斷言。)
(?=exp) 匹配exp前面的位置
(?<=exp) 匹配exp後面的位置
(?!exp) 匹配後面跟的不是exp的位置
(?例子:
字串:i'm singing while you're dancing strings
reg: \b\w+(?=ing\b)
mach:
字串:reading a book
reg: (?<=\bre)\w+\b
mach:
例子:字串:abcme one youabcyou two heabc
reg: \b((?!abc)\w)+\b
mach:
忽略模式裡的空白符:
(?<= # 斷言要匹配的文字的字首
<(\w+)> # 查詢尖括號括起來的字母或數字(即html/xml標籤)
) # 字首結束
.* # 匹配任意文字
(?= # 斷言要匹配的文字的字尾
<\/\1> # 查詢尖括號括起來的內容:前面是乙個"/",後面是先前捕獲的標籤
) # 字尾結束
正規表示式整理
常見正規表示式驗證 d 整數 d 正整數 d 負整數 a za z0 9 數字和字元 不包含標點 u4e00 u9fa5 中文 0 9 0 9 浮點數 a za z0 9 a za z0 9 a za z0 9 郵箱位址 1 9 0 9 0 9 0 9xx 簡單判斷15位或18位身份證 1 9 0 ...
整理正規表示式
控制開頭 控制結尾 轉義序列 n新行 r回車 t製表符 a z 匹配所有的小寫字母 a z 匹配所有的大寫字母 a za z 匹配所有的字母 0 9 匹配所有的數字 0 9 匹配所有的數字,句號和減號 f r t n 匹配所有的白字元 前面曾經提到 表示字串的開頭,但它還有另外乙個含義。當在一組方括...
正規表示式整理
d 匹配乙個數字,data w 匹配乙個數字或乙個單詞,word s 匹配乙個空格 包含tab space w 匹配所有非單詞和下劃線 句點.匹配除新行符 r n 序列外的任何單個字元,表示任意個,表示至少乙個,表示0個或乙個,表示n個,表示m n個。句點星號模式 是匹配範圍最廣的模式之一,因為它可...