整理正規表示式

2021-08-02 16:16:57 字數 2137 閱讀 9255

^控制開頭

$控制結尾

\轉義序列

\n新行

\r回車

\t製表符

[a-z]//匹配所有的小寫字母

[a-z]//匹配所有的大寫字母

[a-za-z]//匹配所有的字母

[0-9]//匹配所有的數字

[0-9\.\-]//匹配所有的數字,句號和減號

[ \f\r\t\n]//匹配所有的白字元

前面曾經提到^表示字串的開頭,但它還有另外乙個含義。當在一組方括號裡使用^是,它表示」非」或」排除」的意思,常常用來剔除某個字元。還用前面的例子,我們要求第乙個字元不能是數字:^[^0-9][0-9]$

[^a-z]//除了小寫字母以外的所有字元

[^\\\/\^]//除了()(/)(^)之外的所有字元

[^\"\']//除了雙引號(「)和單引號(『)之外的所有字元

php的正規表示式有一些內建的通用字元簇,列表如下:

字元簇 描述

[[:alpha:]] 任何字母

[[:digit:]] 任何數字

[[:alnum:]] 任何字母和數字

[[:space:]] 任何空白字元

[[:upper:]] 任何大寫字母

[[:lower:]] 任何小寫字母

[[:punct:]] 任何標點符號

[[:xdigit:]] 任何16進製制的數字,相當於[0-9a-fa-f]

到現在為止,你已經知道如何去匹配乙個字母或數字,但更多的情況下,可能要匹配乙個單詞或一組數字。乙個單詞有若干個字母組成,一組數字有若干個單數組成。跟在字元或字元簇後面的花括號({})用來確定前面的內容的重複出現的次數。

字元簇 描述

^[a-za-z_]所有

的字母和

下劃線[

[:al

pha:

]]3 所有的3個字母的單詞 ^a字

母aa4

aaaa ^aa

a,aa

a或aa

aaa1

,3aa,aaa或aaaa

這些例子描述了花括號的三種不同的用法。乙個數字 的意思是前面的字元或字元簇只出現x次 ;乙個數字加逗號 的意思是前面的內容出現x或更多的次數 ;兩個數字用逗號分隔的數字 表示 前面的內容至少出現x次,但不超過y次。我們可以把模式擴充套件到更多的單詞或數字:

^[a-za-z0-9_]$// 所有包含乙個以上的字母、數字或下劃線的字串

^[1-9][0-9]$// 所有的正整數

^\-[0-9]$// 所有的整數

^[-]?[0-9]+\.?[0-9]+$// 所有的浮點數

最後乙個例子不太好理解,是嗎?這麼看吧:以乙個可選的負號 ([-]?) 開頭 (^)、跟著1個或更多的數字([0-9]+)、和乙個小數點(.)再跟上1個或多個數字([0-9]+),並且後面沒有其他任何東西($)。下面你將知道能夠使用的更為簡單的方法。

特殊字元 ? 與 是相等的,它們都代表著: 0個或1個前面的內容 或 前面的內容是可選的 。所以剛才的例子可以簡化為:

^\-?[0-9]

\.?[0-9]

$

特殊字元 * 與 是相等的,它們都代表著 0 個或多個前面的內容 。最後,字元 + 與 是相等的,表示 1 個或多個前面的內容 ,所以上面的4個例子可以寫成:

^[a-za-z0-9_]+$// 所有包含乙個以上的字母、數字或下劃線的字串

^[1-9][0-9]*$// 所有的正整數

^\-?[0-9]+$// 所有的整數

^\-?[0-9]+\.?[0-9]*$// 所有的浮點數

正規表示式整理

常見正規表示式驗證 d 整數 d 正整數 d 負整數 a za z0 9 數字和字元 不包含標點 u4e00 u9fa5 中文 0 9 0 9 浮點數 a za z0 9 a za z0 9 a za z0 9 郵箱位址 1 9 0 9 0 9 0 9xx 簡單判斷15位或18位身份證 1 9 0 ...

正規表示式整理

d 匹配乙個數字,data w 匹配乙個數字或乙個單詞,word s 匹配乙個空格 包含tab space w 匹配所有非單詞和下劃線 句點.匹配除新行符 r n 序列外的任何單個字元,表示任意個,表示至少乙個,表示0個或乙個,表示n個,表示m n個。句點星號模式 是匹配範圍最廣的模式之一,因為它可...

正規表示式整理

校驗數字的表示式 1.數字 0 9 2.n位的數字 d 3.至少n位的數字 d 4.m n位的數字 d 5.零和非零開頭的數字 0 1 9 0 9 6.非零開頭的最多帶兩位小數的數字 1 9 0 9 0 9 7.帶1 2位小數的正數或負數 d d 8.正數 負數 和小數 d d 9.有兩位小數的正實...