久久精品水蜜桃av综合天堂,久久精品丝袜高跟鞋,精品国产肉丝袜久久,国产一区二区三区色噜噜,黑人video粗暴亚裔
站長百科 | 數(shù)字化技能提升教程 數(shù)字化時代生存寶典
首頁
數(shù)字化百科
電子書
建站程序
開發(fā)
服務(wù)器
辦公軟件
開發(fā)教程
服務(wù)器教程
軟件使用教程
運營教程
熱門電子書
WordPress教程
寶塔面板教程
CSS教程
Shopify教程
導(dǎo)航
程序頻道
推廣頻道
網(wǎng)賺頻道
人物頻道
網(wǎng)站程序
網(wǎng)頁制作
云計算
服務(wù)器
CMS
論壇
網(wǎng)店
虛擬主機
cPanel
網(wǎng)址導(dǎo)航
WIKI使用導(dǎo)航
WIKI首頁
最新資訊
網(wǎng)站程序
站長人物
頁面分類
使用幫助
編輯測試
創(chuàng)建條目
網(wǎng)站地圖
站長百科導(dǎo)航
站長百科
主機偵探
IDCtalk云說
跨境電商導(dǎo)航
WordPress啦
站長專題
網(wǎng)站推廣
網(wǎng)站程序
網(wǎng)站賺錢
虛擬主機
cPanel
網(wǎng)址導(dǎo)航專題
云計算
微博營銷
虛擬主機管理系統(tǒng)
開放平臺
WIKI程序與應(yīng)用
美國十大主機
編輯“
Php-正則表達式
”(章節(jié))
人物百科
|
營銷百科
|
網(wǎng)賺百科
|
站長工具
|
網(wǎng)站程序
|
域名主機
|
互聯(lián)網(wǎng)公司
|
分類索引
跳轉(zhuǎn)至:
導(dǎo)航
、?
搜索
警告:
您沒有登錄。如果您做出任意編輯,您的IP地址將會公開可見。如果您
登錄
或
創(chuàng)建
一個賬戶,您的編輯將歸屬于您的用戶名,且將享受其他好處。
反垃圾檢查。
不要
加入這個!
== 正則表達式匹配規(guī)則 == '''基本模式匹配'''<br> 一切從最基本的開始。模式,是正規(guī)表達式最基本的元素,它們是一組描述字符串特征的字符。模式可以很簡單,由普通的字符串組成,也可以非常復(fù)雜,往往用特殊的字符表示一個范圍內(nèi)的字符、重復(fù)出現(xiàn),或表示上下文。例如:<br> ^once <br> 這個模式包含一個特殊的字符^,表示該模式只匹配那些以once開頭的字符串。例如該模式與字符串"once upon a time"匹配,與"There once was a man from NewYork"不匹配。正如如^符號表示開頭一樣,$符號用來匹配那些以給定模式結(jié)尾的字符串。<br> bucket$ <br> 這個模式與"Who kept all of this cash in a bucket"匹配,與"buckets"不匹配。字符^和$同時使用時,表示精確匹配(字符串與模式一樣)。例如:<br> ^bucket$ <br> 只匹配字符串"bucket"。如果一個模式不包括^和$,那么它與任何包含該模式的字符串匹配。例如:模式<br> once <br> 與字符串 是匹配的。<br> 在該模式中的字母(o-n-c-e)是字面的字符,也就是說,他們表示該字母本身,數(shù)字也是一樣的。其他一些稍微復(fù)雜的字符,如標點符號和白字符(空格、制表符等),要用到轉(zhuǎn)義序列。所有的轉(zhuǎn)義序列都用反斜杠(\)打頭。制表符的轉(zhuǎn)義序列是:\t。所以如果我們要檢測一個字符串是否以制表符開頭,可以用這個模式:<br> ^\t <br> 類似的,用\n表示“新行”,\r表示回車。其他的特殊符號,可以用在前面加上反斜杠,如反斜杠本身用\\表示,句號.用\.表示,以此類推。<br> '''字符簇'''<br> 在INTERNET的程序中,正規(guī)表達式通常用來驗證用戶的輸入。當用戶提交一個FORM以后,要判斷輸入的電話號碼、地址、EMAIL地址、信用卡號碼等是否有效,用普通的基于字面的字符是不夠的。<br> 所以要用一種更自由的描述我們要的模式的辦法,它就是字符簇。要建立一個表示所有元音字符的字符簇,就把所有的元音字符放在一個方括號里:<br> [AaEeIiOoUu] <br> 這個模式與任何元音字符匹配,但只能表示一個字符。用連字號可以表示一個字符的范圍,如:<br> [a-z] //匹配所有的小寫字母 <br> [A-Z] //匹配所有的大寫字母 <br> [a-zA-Z] //匹配所有的字母 <br> [0-9] //匹配所有的數(shù)字 <br> [0-9\.\-] //匹配所有的數(shù)字,句號和減號 <br> [ \f\r\t\n] //匹配所有的白字符 <br> 同樣的,這些也只表示一個字符,這是一個非常重要的。如果要匹配一個由一個小寫字母和一位數(shù)字組成的字符串,比如"z2"、"t6"或"g7",但不是"ab2"、"r2d3" 或"b52"的話,用這個模式:<br> ^[a-z][0-9]$ <br> 盡管[a-z]代表26個字母的范圍,但在這里它只能與第一個字符是小寫字母的字符串匹配。<br> 前面曾經(jīng)提到^表示字符串的開頭,但它還有另外一個含義。當在一組方括號里使用^是,它表示“非”或“排除”的意思,常常用來剔除某個字符。還用前面的例子,我們要求第一個字符不能是數(shù)字:<br> ^[^0-9][0-9]$ <br> 這個模式與"&5"、"g7"及"-2"是匹配的,但與"12"、"66"是不匹配的。下面是幾個排除特定字符的例子:<br> [^a-z] //除了小寫字母以外的所有字符 <br> [^\\\/\^] //除了(\)(/)(^)之外的所有字符 <br> [^\"\'] //除了雙引號(")和單引號(')之外的所有字符 <br> 特殊字符"." (點,句號)在正規(guī)表達式中用來表示除了“新行”之外的所有字符。所以模式"^.5$"與任何兩個字符的、以數(shù)字5結(jié)尾和以其他非“新行”字符開頭的字符串匹配。模式"."可以匹配任何字符串,除了空串和只包括一個“新行”的字符串。<br> PHP的正規(guī)表達式有一些內(nèi)置的通用字符簇,列表如下:<br> 字符簇含義 <br> :alpha: 任何字母 <br> :digit: 任何數(shù)字 <br> :alnum: 任何字母和數(shù)字 <br> :space: 任何白字符 <br> :upper: 任何大寫字母 <br> :lower: 任何小寫字母 <br> :punct: 任何標點符號 <br> :xdigit: 任何16進制的數(shù)字,相當于[0-9a-fA-F] <br> '''確定重復(fù)出現(xiàn)'''<br> 到現(xiàn)在為止,你已經(jīng)知道如何去匹配一個字母或數(shù)字,但更多的情況下,可能要匹配一個單詞或一組數(shù)字。一個單詞有若干個字母組成,一組數(shù)字有若干個單數(shù)組成。跟在字符或字符簇后面的花括號({})用來確定前面的內(nèi)容的重復(fù)出現(xiàn)的次數(shù)。 <br> 字符簇 含義 <br> ^[a-zA-Z_]$ 所有的字母和下劃線 <br> ^:alpha:{3}$ 所有的3個字母的單詞 <br> ^a$ 字母a <br> ^a{4}$ aaaa <br> ^a{2,4}$ aa,aaa或aaaa <br> ^a{1,3}$ a,aa或aaa <br> ^a{2,}$ 包含多于兩個a的字符串 <br> ^a{2,} 如:aardvark和aaab,但apple不行 <br> a{2,} 如:baad和aaa,但Nantucket不行 <br> \t{2} 兩個制表符 <br> .{2} 所有的兩個字符 <br> 這些例子描述了花括號的三種不同的用法。一個數(shù)字,{x}的意思是“前面的字符或字符簇只出現(xiàn)x次”;一個數(shù)字加逗號,{x,}的意思是“前面的內(nèi)容出現(xiàn)x或更多的次數(shù)”;兩個用逗號分隔的數(shù)字,{x,y}表示“前面的內(nèi)容至少出現(xiàn)x次,但不超過y次”。我們可以把模式擴展到更多的單詞或數(shù)字:<br> ^[a-zA-Z0-9_]{1,}$ //所有包含一個以上的字母、數(shù)字或下劃線的字符串 <br> ^[0-9]{1,}$ //所有的正數(shù) <br> ^\-{0,1}[0-9]{1,}$ //所有的整數(shù) <br> ^\-{0,1}[0-9]{0,}\.{0,1}[0-9]{0,}$ //所有的小數(shù) <br> 最后一個例子不太好理解,是嗎?這么看吧:與所有以一個可選的負號(\-{0,1})開頭(^)、跟著0個或更多的數(shù)字([0-9]{0,})、和一個可選的小數(shù)點(\.{0,1})再跟上0個或多個數(shù)字([0-9]{0,}),并且沒有其他任何東西($)。下面你將知道能夠使用的更為簡單的方法。<br> 特殊字符"?"與{0,1}是相等的,它們都代表著:“0個或1個前面的內(nèi)容”或“前面的內(nèi)容是可選的”。所以剛才的例子可以簡化為:<br> ^\-?[0-9]{0,}\.?[0-9]{0,}$ <br> 特殊字符"*"與{0,}是相等的,它們都代表著“0個或多個前面的內(nèi)容”。最后,字符"+"與 {1,}是相等的,表示“1個或多個前面的內(nèi)容”,所以上面的4個例子可以寫成:<br> ^[a-zA-Z0-9_]+$ //所有包含一個以上的字母、數(shù)字或下劃線的字符串 <br> ^[0-9]+$ //所有的正數(shù) <br> ^\-?[0-9]+$ //所有的整數(shù) <br> ^\-?[0-9]*\.?[0-9]*$ //所有的小數(shù) <br> ----
摘要:
請注意,您對站長百科的所有貢獻都可能被其他貢獻者編輯,修改或刪除。如果您不希望您的文字被任意修改和再散布,請不要提交。
您同時也要向我們保證您所提交的內(nèi)容是您自己所作,或得自一個不受版權(quán)保護或相似自由的來源(參閱
Wordpress-mediawiki:版權(quán)
的細節(jié))。
未經(jīng)許可,請勿提交受版權(quán)保護的作品!
取消
編輯幫助
(在新窗口中打開)
取自“
http://www.kktzf.com.cn/wiki/Php-正則表達式
”