常用正則表達式


參考:http://www.williamlong.info/archives/433.html

http://www.cnblogs.com/skylaugh/archive/2009/08/17/1548175.html

推薦在線正則生成網站txt2re

正則表達式30分鍾入門教程

正則工具regexbuddy

 

非負整數(正整數 + 0)     "^\d+$"、
正整數         "^[0-9]*[1-9][0-9]*$"
非正整數(負整數 + 0)     "^((-\d+)|(0+))$"  //
負整數      "^-[0-9]*[1-9][0-9]*$"  //
整數      "^-?\d+$"    //
非負浮點數(正浮點數 + 0)     "^\d+(\.\d+)?$"  //
正浮點數     "^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$"  /
非正浮點數(負浮點數 + 0)    "^((-\d+(\.\d+)?)|(0+(\.0+)?))$"  //
負浮點數     "^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$"  //
浮點數     "^(-?\d+)(\.\d+)?$"  //
由26個英文字母組成的字符串      "^[A-Za-z]+$"  //
由26個英文字母的大寫組成的字符串       "^[A-Z]+$"  //
由26個英文字母的小寫組成的字符串      "^[a-z]+$"  //
由數字和26個英文字母組成的字符串      "^[A-Za-z0-9]+$"  //
由數字、26個英文字母或者下划線組成的字符串     "^\w+$"  //
url    "^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$"  //
 年-月-日     /^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$/   // 
月/日/年     /^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$/   // 
電話號碼     /^((\+?[0-9]{2,4}\-[0-9]{3,4}\-)|([0-9]{3,4}\-))?([0-9]{7,8})(\-[0-9]+)?$/     //
匹配中文字符的正則表達式: [\u4e00-\u9fa5] 
匹配雙字節字符(包括漢字在內):[^\x00-\xff] 
匹配空行的正則表達式:\n[\s| ]*\r 
匹配HTML標記的正則表達式:/.*|/ 
匹配首尾空格的正則表達式:(^\s*)|(\s*$) 
匹配Email地址的正則表達式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* 

ipv4    ^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|1[09][0-9]|[1-9][0-9]|[0-9])$

匹配網址URL的正則表達式:^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$ 
匹配帳號是否合法(字母開頭,允許5-16字節,允許字母數字下划線):^[a-zA-Z][a-zA-Z0-9_]{4,15}$ 
匹配國內電話號碼:(\d{3}-|\d{4}-)?(\d{8}|\d{7})? 
匹配騰訊QQ號:^[1-9]*[1-9][0-9]*$ 
元字符及其在正則表達式上下文中的行為: 
\ 將下一個字符標記為一個特殊字符、或一個原義字符、或一個后向引用、或一個八進制轉義符。 
^ 匹配輸入字符串的開始位置。如果設置了 RegExp 對象的Multiline 屬性,^ 也匹配 ’\n’ 或 ’\r’ 之后的位置。 
$ 匹配輸入字符串的結束位置。如果設置了 RegExp 對象的Multiline 屬性,$ 也匹配 ’\n’ 或 ’\r’ 之前的位置。 
* 匹配前面的子表達式零次或多次。 
+ 匹配前面的子表達式一次或多次。+ 等價於 {1,}。 
? 匹配前面的子表達式零次或一次。? 等價於 {0,1}。 
{n} n 是一個非負整數,匹配確定的n 次。 
{n,} n 是一個非負整數,至少匹配n 次。 
{n,m} m 和 n 均為非負整數,其中n .*|/ 
匹配首尾空格的正則表達式:(^s*)|(s*$) 
匹配Email地址的正則表達式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)* 
匹配網址URL的正則表達式:http://([w-]+.)+[w-]+(/[w- ./?%&=]*)? 
利用正則表達式限制網頁表單里的文本框輸入內容: 
用正則表達式限制只能輸入中文:onkeyup="value=value.replace(/[^u4E00-u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^u4E00-u9FA5]/g,''))" 
用正則表達式限制只能輸入全角字符: onkeyup="value=value.replace(/[^uFF00-uFFFF]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^uFF00-uFFFF]/g,''))" 
用正則表達式限制只能輸入數字:onkeyup="value=value.replace(/[^d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^d]/g,''))" 
用正則表達式限制只能輸入數字和英文:onkeyup="value=value.replace(/[W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^d]/g,''))" 
=========常用正則式 
匹配中文字符的正則表達式: [\u4e00-\u9fa5] 
匹配雙字節字符(包括漢字在內):[^\x00-\xff] 
匹配空行的正則表達式:\n[\s| ]*\r 
匹配HTML標記的正則表達式:/.*|/ 
匹配首尾空格的正則表達式:(^\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).*$ 
1、非負整數:^\d+$ 
2、正整數:^[0-9]*[1-9][0-9]*$ 
3、非正整數:^((-\d+)|(0+))$ 
4、負整數:^-[0-9]*[1-9][0-9]*$ 
5、整數:^-?\d+$ 
6、非負浮點數:^\d+(\.\d+)?$ 
7、正浮點數:^((0-9)+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$ 
8、非正浮點數:^((-\d+\.\d+)?)|(0+(\.0+)?))$ 
9、負浮點數:^(-((正浮點數正則式)))$ 
10、英文字符串:^[A-Za-z]+$ 
11、英文大寫串:^[A-Z]+$ 
12、英文小寫串:^[a-z]+$ 
13、英文字符數字串:^[A-Za-z0-9]+$ 
14、英數字加下划線串:^\w+$ 
15、E-mail地址:^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$ 
16、URL:^[a-zA-Z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\s*)?$ 
或:^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^\"\"])*$ 
17、郵政編碼:^[1-9]\d{5}$ 
18、中文:^[\u0391-\uFFE5]+$ 
19、電話號碼:^((\(\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}$ 
21、雙字節字符(包括漢字在內):^\x00-\xff 
22、匹配首尾空格:(^\s*)|(\s*$)(像vbscript那樣的trim函數) 
23、匹配HTML標記:.*| 
24、匹配空行:\n[\s| ]*\r 
25、提取信息中的網絡鏈接:(h|H)(r|R)(e|E)(f|F) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)? 
26、提取信息中的郵件地址:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* 
27、提取信息中的圖片鏈接:(s|S)(r|R)(c|C) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)? 
28、提取信息中的IP地址:(\d+)\.(\d+)\.(\d+)\.(\d+) 
29、提取信息中的中國手機號碼:(86)*0*13\d{9} 
30、提取信息中的中國固定電話號碼:(\(\d{3,4}\)|\d{3,4}-|\s)?\d{8} 
31、提取信息中的中國電話號碼(包括移動和固定電話):(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14} 
32、提取信息中的中國郵政編碼:[1-9]{1}(\d+){5} 
33、提取信息中的浮點數(即小數):(-?\d*)\.?\d+ 
34、提取信息中的任何數字 :(-?\d*)(\.\d+)? 
35、IP:(\d+)\.(\d+)\.(\d+)\.(\d+) 
36、電話區號:/^0\d{2,3}$/ 
37、騰訊QQ號:^[1-9]*[1-9][0-9]*$ 
38、帳號(字母開頭,允許5-16字節,允許字母數字下划線):^[a-zA-Z][a-zA-Z0-9_]{4,15}$ 
39、中文、英文、數字及下划線:^[\u4e00-\u9fa5_a-zA-Z0-9]+$


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM