正規表示式的整理

2021-06-17 15:34:02 字數 1868 閱讀 6748

\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個。句點星號模式 是匹配範圍最廣的模式之一,因為它可...