經常使用正則表達式


與除 \n 之外的任何字符匹配。若是經過 Singleline 選項(請參閱正則表達式選項)進行了修改,則句點字符與任何字符匹配。 

[aeiou] 
與指定字符集中包含的任何單個字符匹配。 

[^aeiou] 
與不在指定字符集中的任何單個字符匹配。 

[0-9a-fA-F] 
使用連字號 (–) 容許指定連續字符範圍。 

\p{name} 
與 name 指定的命名字符類中的任何字符匹配。支持的名稱爲 Unicode 組和塊範圍。例如 Ll£?Nd£?Z£?IsGreek£?IsBoxDrawing。 

\P{name} 
與在 {name} 中指定的組和塊範圍中未包含的文本匹配。 

\w 
與任何單詞字符匹配。等效於 Unicode 字符類別 
[\p{Ll}\p{Lu}\p{Lt}\p{Lo}\p{Nd}\p{Pc}]。若是經過 ECMAScript 選項指定了符合 ECMAScript 的行爲,則 \w 等同於 [a-zA-Z_0-9]。 

\W 
與任何非單詞字符匹配。等效於 Unicode 類別 [^\p{Ll}\p{Lu}\p{Lt}\p{Lo}\p{Nd}\p{Pc}]。若是經過 ECMAScript 選項指定了符合 ECMAScript 的行爲,則 \W 等同於 [^a-zA-Z_0-9]。 

\s 
與任何空白字符匹配。等效於 Unicode 字符類別 [\f\n\r\t\v\x85\p{Z}]。若是經過 ECMAScript 選項指定了符合 ECMAScript 的行爲,則 \s 等同於 [ \f\n\r\t\v]。 

\S 
與任何非空白字符匹配。等效於 Unicode 字符類別 [^\f\n\r\t\v\x85\p{Z}]。若是經過 ECMAScript 選項指定了符合 ECMAScript 的行爲,則 \S 等同於 [^ \f\n\r\t\v]。 

\d 
與任何十進制數字匹配。與 Unicode 的 \p{Nd} 和非 Unicode 的 [0-9] 以及 ECMAScript 行爲同樣。 

\D 
與任何非數字匹配。與 Unicode 的 \P{Nd} 和非 Unicode 的 [^0-9] 以及 ECMAScript 行爲同樣。 

指定零個或更多個匹配;例如 \w* 或 (abc)*。與 {0,} 相同。 


指定一個或多個匹配;例如 \w+ 或 (abc)+。與 {1,} 相同。 


指定零個或一個匹配;例如 \w? 或 (abc)?。與 {0,1} 相同。 

{n} 
指定剛好 n 個匹配;例如 (pizza){2}。 

{n,} 
指定至少 n 個匹配;例如 (abc){2,}。 

{n,m} 
指定至少 n 個但很少於 m 個匹配。 

*? 
指定儘量少地使用重複的第一個匹配 (lazy *)。 

+? 
指定儘量少地使用重複但至少使用一次 (lazy +)。 

?? 
指定使用零次重複(若有可能)或一次重複 (lazy ?)。 

{n}? 
等效於 {n} (lazy {n})。 

{n,}? 
指定儘量少地使用重複,但至少使用 n 次 (lazy {n,})。 

{n,m}? 
指定介於 n 次和 m 次之間、儘量少地使用重複 (lazy {n,m})。
原子零寬度斷言 
斷言 
說明 


指定匹配必須出如今字符串的開頭或行的開頭。有關更多信息,請參閱正則表達式選項中的 Multiline 選項。 


指定匹配必須出如今如下位置:字符串結尾、字符串結尾的 \n 以前或行的結尾。有關更多信息,請參閱正則表達式選項中的 Multiline 選項。 

\A 
指定匹配必須出如今字符串的開頭(忽略 Multiline 選項)。 

\Z 
指定匹配必須出如今字符串的結尾或字符串結尾的 \n 以前(忽略 Multiline 選項)。 

\z 
指定匹配必須出如今字符串的結尾(忽略 Multiline 選項)。 

\G 
指定匹配必須出如今當前搜索開始的位置(此位置一般是上一次搜索結束位置以後的第一個字符)。例如,請考慮一個由分離的字符組組成的串聯字符串,其中每一組的長度都爲 n 個字符。在每一個字符組中搜索匹配時,若是正則表達式在 0、n、2n、3n 等字符位置找到匹配,則該正則表達式成功。僅當匹配出如今定位組邊界上時纔會成功。 

\b 
指定匹配必須出如今 \w(字母數字)和 \W(非字母數字)字符之間的邊界上。匹配必須出如今單詞邊界上,即出如今由空格分隔的單詞中第一個或最後一個字符上。 

\B 
指定匹配不得出如今 \b 邊界上。 

 

經常使用正則式正則表達式

 

匹配中文字符的正則表達式: [\u4e00-\u9fa5]

匹配雙字節字符(包括漢字在內):[^\x00-\xff]

匹配空行的正則表達式:\n[\s| ]*\r

匹配HTML標記的正則表達式:/<(.*)>.*<\/\1>|<(.*) \/>/ 

匹配首尾空格的正則表達式:(^\s*)|(\s*$)

匹配IP地址的正則表達式:/(\d+)\.(\d+)\.(\d+)\.(\d+)/g //

匹配Email地址的正則表達式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

匹配網址URL的正則表達式:http://(/[\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?

sql語句:^(select|drop|delete|create|update|insert).*$

一、非負整數:^\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-Z]+$ 

十二、英文小寫串:^[a-z]+$ 

1三、英文字符數字串:^[A-Za-z0-9]+$ 

1四、英數字加下劃線串:^\w+$ 

1五、E-mail地址:^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$ 

1六、URL:^[a-zA-Z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\s*)?$ 
或:^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$

1七、郵政編碼:^[1-9]\d{5}$

1八、中文:^[\u0391-\uFFE5]+$

1九、電話號碼:^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$

20、手機號碼:^((\(\d{2,3}\))|(\d{3}\-))?13\d{9}$

2一、雙字節字符(包括漢字在內):^\x00-\xff

2二、匹配首尾空格:(^\s*)|(\s*$)(像vbscript那樣的trim函數)

2三、匹配HTML標記:<(.*)>.*<\/\1>|<(.*) \/> 

2四、匹配空行:\n[\s| ]*\r

2五、提取信息中的網絡連接:(h|H)(r|R)(e|E)(f|F) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?

2六、提取信息中的郵件地址:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*

2七、提取信息中的圖片連接:(s|S)(r|R)(c|C) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?

2八、提取信息中的IP地址:(\d+)\.(\d+)\.(\d+)\.(\d+)

2九、提取信息中的中國手機號碼:(86)*0*13\d{9}

30、提取信息中的中國固定電話號碼:(\(\d{3,4}\)|\d{3,4}-|\s)?\d{8}

3一、提取信息中的中國電話號碼(包括移動和固定電話):(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14}

3二、提取信息中的中國郵政編碼:[1-9]{1}(\d+){5}

3三、提取信息中的浮點數(即小數):(-?\d*)\.?\d+

3四、提取信息中的任何數字 :(-?\d*)(\.\d+)? 

3五、IP:(\d+)\.(\d+)\.(\d+)\.(\d+)

3六、電話區號:/^0\d{2,3}$/

3七、騰訊QQ號:^[1-9]*[1-9][0-9]*$

3八、賬號(字母開頭,容許5-16字節,容許字母數字下劃線):^[a-zA-Z][a-zA-Z0-9_]{4,15}$

3九、中文、英文、數字及下劃線:^[\u4e00-\u9fa5_a-zA-Z0-9]+$sql

相關文章
相關標籤/搜索