以下就是對超常用的PHP正則表達式進行的收集整理,為了方便大家更快更好的掌握php正則表達式。
一、表單驗證匹配
驗證賬號,字母開頭,允許 5-16 字節,允許字母數字下劃線:^[a-zA-Z][a-zA-Z0-9_]{4,15}$
驗證賬號,不能為空,不能有空格,只能是英文字母:^\S+[a-z A-Z]$
驗證賬號,不能有空格,不能非數字:^\d+$
驗證用戶密碼,以字母開頭,長度在 6-18 之間:^[a-zA-Z]\w{5,17}$
驗證是否含有 ^%',;=?$\ 等字符:[^%',;=?$\x22]+
匹配Email地址:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
匹配騰訊QQ號:[1-9][0-9]{4,}
匹配日期,只能是 2004-10-22 格式:^\d{4}\-\d{1,2}-\d{1,2}$
匹配國內電話號碼:^\d{3}-\d{8}|\d{4}-\d{7,8}$------------評注:匹配形式如010-12345678 或0571-12345678 或 0831-1234567
匹配中國郵政編碼:^[1-9]\d{5}(?!\d)$
匹配身份證:\d{14}(\d{4}|(\d{3}[xX])|\d{1})------------評注:中國的身份證為15 位或18 位
不能為空且二十字節以上:^[\s|\S]{20,}$
二、字符匹配
匹配由 26 個英文字母組成的字符串:^[A-Za-z]+$
匹配由 26 個大寫英文字母組成的字符串:^[A-Z]+$
匹配由 26 個小寫英文字母組成的字符串:^[a-z]+$
匹配由數字和 26 個英文字母組成的字符串:^[A-Za-z0-9]+$
匹配由數字、26個英文字母或者下劃線組成的字符串:^\w+$
匹配空行:\n[\s| ]*\r
匹配任何內容:[\s\S]*
匹配中文字符:[\x80-\xff]+ 或者 [\xa1-\xff]+
只能輸入漢字:^[\x80-\xff],{0,}$
匹配雙字節字符(包括漢字在內):[^\x00-\xff]
三、匹配數字
只能輸入數字:^[0-9]*$
只能輸入n位的數字:^\d{n}$
只能輸入至少n位數字:^\d{n,}$
只能輸入m-n位的數字:^\d{m,n}$
匹配正整數:^[1-9]\d*$
匹配負整數:^-[1-9]\d*$
匹配整數:^-?[1-9]\d*$
匹配非負整數(正整數 + 0):^[1-9]\d*|0$
匹配非正整數(負整數 + 0):^-[1-9]\d*|0$
匹配正浮點數:^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$
匹配負浮點數:^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$
匹配浮點數:^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$
匹配非負浮點數(正浮點數 + 0):^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$
匹配非正浮點數(負浮點數 + 0):^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$
四、其他
匹配HTML標記的正則表達式(無法匹配嵌套標簽):(\S*?)[^>]*>.*?/\1>|.*? />
匹配網址 URL :[a-zA-z]+://[^\s]*
匹配 IP 地址:((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)
匹配完整域名:[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+\.?
提示
上述正則表達式通常都加了 ^ 與 $ 來限定字符的起始和結束,如果需要匹配的內容包括在字符串當中,可能需要考慮去掉 ^ 和 $ 限定符。
以上正則表達式僅供參考,使用時請檢驗后再使用,希望通過這些超常用的PHP正則表達式
您可能感興趣的文章:- 日常收集整理php正則表達式(超常用)
- PHP中過濾常用標簽的正則表達式
- 修改月光博客網站中PHP常用正則表達式中出現的錯誤
- php中常用的正則表達式的介紹及應用實例代碼
- PHP 正則表達式常用函數使用小結
- PHP一些常用的正則表達式字符的一些轉換
- php下常用表單驗證的正則表達式
- 最常用的PHP正則表達式收集整理
- [PHP]常用正則表達式收集
- PHP最常用的正則表達式