天天看點

正規表達式pattern的比對格式

0> 比對

--------------------------------------------------------------------------------

(pattern) 比對pattern并擷取這一比對,所擷取的比對可以從産生的Matches集合得到

 1> 集合

[xyz] 字元集合(x/y或z)

[a-z] 字元範圍

[a-zA-Z]

[^xyz] 負值字元集合 (任何字元, 除了xyz)

[^a-z] 負值字元範圍

[a-d][m-p]  并集(a到d 或 m到p)

2> 常用元字元

. 比對除換行符以外的任意字元

\w 比對字母或數字或下劃線或漢字 [a-zA-Z_0-9]

\s 比對任意的空白符(空格、TAB\t、回車\r \n)

\d 比對數字 [0-9]

 ^ 比對字元串的開始

$ 比對字元串的結束

\b 比對單詞的開始或結束

2> 常用反義符

\W          比對任意不是字母,數字,下劃線,漢字的字元[^\w]

\S 比對任意不是空白符的字元 [^\s]

\D 比對任意非數字的字元[^0-9]

 \B 比對不是單詞開頭或結束的位置

[^x] 比對除了x以外的任意字元

[^aeiou] 比對除了aeiou這幾個字母以外的任意字元

 4> 常用限定符

* 重複零次或更多次

+ 重複一次或更多次

? 重複零次或一次

{n} 重複n次

{n,} 重複n次或更多次

{n,m} 重複n到m次,

5> 貪婪和懶惰

*? 重複任意次,但盡可能少重複

*+ 重複1次或更多次,但盡可能少重複

?? 重複0次或1次,但盡可能少重複

{n,m}?      重複n到m次,但盡可能少重複

{n,}? 重複n次以上,但盡可能少重複

繼續閱讀