幾種基本的數字正則表達式[轉]
只能輸入1個數字
表達式 ^\d$
描述 匹配一個數字
匹配的例子 0,1,2,3
不匹配的例子
只能輸入n個數字
表達式 ^\d{n}$ 例如^\d{8}$
描述 匹配8個數字
匹配的例子 12345678,22223334,12344321
不匹配的例子
只能輸入至少n個數字
表達式 ^\d{n,}$ 例如^\d{8,}$
描述 匹配最少n個數字
匹配的例子 12345678,123456789,12344321
不匹配的例子
只能輸入m到n個數字
表達式 ^\d{m,n}$ 例如^\d{7,8}$
描述 匹配m到n個數字
匹配的例子 12345678,1234567
不匹配的例子 123456,123456789
只能輸入數字
表達式 ^[0-9]*$
描述 匹配任意個數字
匹配的例子 12345678,1234567
不匹配的例子 E,
只能輸入某個區間數字
表達式 ^[12-15]$
描述 匹配某個區間的數字
匹配的例子 12,13,14,15
不匹配的例子
只能輸入0和非0打頭的數字
表達式 ^(0|[1-9][0-9]*)$
描述 可以為0,第一個數字不能為0,數字中可以有0
匹配的例子 12,10,101,100
不匹配的例子 01,
只能輸入實數
表達式 ^[-+]?\d+(\.\d+)?$
描述 匹配實數
匹配的例子 18,+3.14,-9.90
不匹配的例子 .6,33s,67-99
只能輸入n位小數的正實數
表達式 ^[0-9]+(.[0-9]{n})?$以^[0-9]+(.[0-9]{2})?$為例
描述 匹配n位小數的正實數
匹配的例子 2.22
不匹配的例子 2.222,-2.22,
只能輸入m-n位小數的正實數
表達式 ^[0-9]+(.[0-9]{m,n})?$以^[0-9]+(.[0-9]{1,2})?$為例
描述 匹配m到n位小數的正實數
匹配的例子 2.22,2.2
不匹配的例子 2.222,-2.2222,
只能輸入非0的正整數
表達式 ^\+?[1-9][0-9]*$
描述 匹配非0的正整數
匹配的例子 2,23,234
不匹配的例子 0,-4,
只能輸入非0的負整數
表達式 ^\-[1-9][0-9]*$
描述 匹配非0的負整數
匹配的例子 -2,-23,-234
不匹配的例子 0,4,
只能輸入n個字符
表達式 ^.{n}$ 以^.{4}$為例
描述 匹配n個字符,註意漢字只算1個字符
匹配的例子 1234,12we,123清,清清月兒
不匹配的例子 0,123,123www,
只能輸入英文字符
表達式 ^.[A-Za-z]+$為例
描述 匹配英文字符,大小寫任意
匹配的例子 Asp,WWW,
不匹配的例子 0,123,123www,
只能輸入大寫英文字符
表達式 ^.[A-Z]+$為例
描述 匹配英文大寫字符
匹配的例子 NET,WWW,
不匹配的例子 0,123,123www,
只能輸入小寫英文字符
表達式 ^.[a-z]+$為例
描述 匹配英文大寫字符
匹配的例子 asp,csdn
不匹配的例子 0,NET,WWW,
只能輸入英文字符+數字
表達式 ^.[A-Za-z0-9]+$為例
描述 匹配英文字符+數字
匹配的例子 1Asp,W1W1W,
不匹配的例子 0,123,123,www,
只能輸入英文字符/數字/下劃線
表達式 ^\w+$為例
描述 匹配英文字符或數字或下劃線
匹配的例子 1Asp,WWW,12,1_w
不匹配的例子 3#,2-4,w#$,
密碼舉例
表達式 ^.[a-zA-Z] \w{m,n}$
描述 匹配英文字符開頭的m-n位字符且只能數字字母或下劃線
匹配的例子
不匹配的例子
驗證首字母大寫
表達式 \b[^\Wa-z0-9_][^\WA-Z0-9_]*\b
描述 首字母只能大寫
匹配的例子 Asp,Net
不匹配的例子
驗證網址(帶?id=中文)VS.NET2005無此功能
表達式 ^http:\/\/([\w-]+(\.[\w-]+)+(\/[\w- .\/\?%&=\u4e00-\u9fa5]*)?)?$
描述 驗證帶?id=中文
匹配的例子 ,
http://blog.csdn.net/?id=清清月兒
不匹配的例子
驗證漢字
表達式 ^[\u4e00-\u9fa5]{0,}$
描述 只能漢字
匹配的例子 清清月兒
不匹配的例子
驗證QQ號
表達式 [0-9]{5,9}
描述 5-9位的QQ號
匹配的例子 10000,123456
不匹配的例子 10000w,
驗證電子郵件(驗證MSN號一樣)
表達式 \w+([-+.′]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
描述 註意MSN用非hotmail.com郵箱也可以
匹配的例子 [email protected]
不匹配的例子 [email protected].
驗證身份證號(粗驗,最好服務器端調類庫再細驗證)
表達式 ^[1-9]([0-9]{16}|[0-9]{13})[xX0-9]$
描述
匹配的例子 15或者18位的身份證號,支持帶X的
不匹配的例子
驗證手機號(包含159,不包含小靈通)
表達式 ^13[0-9]{1}[0-9]{8}|^15[9]{1}[0-9]{8}
描述 包含159的手機號130-139
匹配的例子 139XXXXXXXX
不匹配的例子 140XXXXXXXX,
驗證電話號碼號(很復雜,VS.NET2005給的是錯的)
表達式(不完美 ) 方案一 ((\(\d{3}\)|\d{3}-)|(\(\d{4}\)|\d{4}-))?(\d{8}|\d{7})
方案二 (^[0-9]{3,4}\-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^\([0-9]{3,4}\)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$) 支持手機號但也不完美
描述 上海:02112345678 3+8位
上海:021-12345678
上海:(021)-12345678
上海:(021)12345678
鄭州:03711234567 4+7位
杭州:057112345678 4+8位
還有帶上分機號,國家碼的情況
由於情況非常復雜所以不建議前臺做100%驗證,到目前為止似乎也沒有誰能寫一個包含所有的類型 ,其實有很多情況本身就是矛盾的。
如果誰有更好 的驗證電話的請留言
匹配的例子
不匹配的例子
驗證護照
表達式 (P\d{7})|G\d{8})
描述 驗證P+7個數字和G+8個數字
匹配的例子
不匹配的例子
驗證IP
表達式
^(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])$
描述 驗證IP
匹配的例子 192.168.0.1 222.234.1.4
不匹配的例子
驗證域
表達式 ^[a-zA-Z0-9]+([a-zA-Z0-9\-\.]+)?\.(com|org|net|cn|com.cn|edu.cn|grv.cn|)$
描述 驗證域
匹配的例子 csdn.net baidu.com it.com.cn
不匹配的例子 192.168.0.1
驗證信用卡
表達式 ^((?:4\d{3})|(?:5[1-5]\d{2})|(?:6011)|(?:3[68]\d{2})|(?:30[012345]\d))[ -]?(\d{4})[ -]?(\d{4})[ -]?(\d{4}|3[4,7]\d{13})$
描述 驗證VISA卡,萬事達卡,Discover卡,美國運通卡
匹配的例子
不匹配的例子
驗證ISBN 國際標準書號
表達式 ^(\d[- ]*){9}[\dxX]$
描述 驗證ISBN國際標準書號
匹配的例子 7-111-19947-2
不匹配的例子
驗證GUID 全球唯一標識符
表達式 ^[A-Z0-9]{8}-[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{12}$
描述 格式8-4-4-4-12
匹配的例子 2064d355-c0b9-41d8-9ef7-9d8b26524751
不匹配的例子
驗證文件路徑和擴展名
表達式 ^([a-zA-Z]\:|\\)\\([^\\]+\\)*[^\/:*?"<>|]+\.txt(l)?$
描述 檢查路徑和文件擴展名
匹配的例子 E:\mo.txt
不匹配的例子 E:\ , mo.doc, E:\mo.doc ,
驗證Html顏色值
表達式 ^#?([a-f]|[A-F]|[0-9]){3}(([a-f]|[A-F]|[0-9]){3})?$
描述 檢查顏色取值
匹配的例子 #FF0000
不匹配的例子
幾種基本的數字正則表達式[轉]