正則表達式的實用率很高,一般用于字符串處理、表單驗證等場合,但是有許多新手朋友們不了解常用的的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正則表達式大家一定要認真看哦。
新聞熱點
疑難解答