亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > PHP > 正文

PHP中的正規表達式(一)

2024-09-04 11:50:03
字體:
來源:轉載
供稿:網友

PHP繼承*NIX的一貫傳統,完全支持正規表達式的處理。正規表達式提供了一種高級的,但不直觀的字符串匹配和處理的方法。用過PERL的正規表達式的朋友都知道,正規表達式的功能非常強大,但學起來不是那么容易。
比如:

^.+@.+..+$

這段有效卻難以理解的代碼足夠使一些程序員頭痛(我就是)或者讓他們放棄使用正規表達式。相信當你讀完這個教程后,就可以理解這段代碼的含義了。

基本模式匹配

一切從最基本的開始。模式,是正規表達式最基本的元素,它們是一組描述字符串特征的字符。模式可以很簡單,由普通的字符串組成,也可以非常復雜,往往用特殊的字符表示一個范圍內的字符、重復出現,或表示上下文。例如:

^once

這個模式包含一個特殊的字符^,表示該模式只匹配那些以once開頭的字符串。例如該模式與字符串""once upon a time""匹配,與""There once was a man from NewYork""不匹配。正如如^符號表示開頭一樣,$符號用來匹配那些以給定模式結尾的字符串。

bucket$

這個模式與""Who kept all of this cash in a bucket""匹配,與""buckets""不匹配。字符^和$同時使用時,表示精確匹配(字符串與模式一樣)。例如:

^bucket$

只匹配字符串""bucket""。如果一個模式不包括^和$,那么它與任何包含該模式的字符串匹配。例如:模式

once

與字符串

There once was a man from NewYork
Who kept all of his cash in a bucket.

是匹配的。

在該模式中的字母(o-n-c-e)是字面的字符,也就是說,他們表示該字母本身,數字也是一樣的。其他一些稍微復雜的字符,如標點符號和白字符(空格、制表符等),要用到轉義序列。所有的轉義序列都用反斜杠()打頭。制表符的轉義序列是:t。所以如果我們要檢測一個字符串是否以制表符開頭,可以用這個模式:

^t

類似的,用n表示“新行”,r表示回車。其他的特殊符號,可以用在前面加上反斜杠,如反斜杠本身用表示,句號.用.表示,以此類推。

字符簇

在INTERNET的程序中,正規表達式通常用來驗證用戶的輸入。當用戶提交一個FORM以后,要判斷輸入的電話號碼、地址、EMAIL地址、信用卡號碼等是否有效,用普通的基于字面的字符是不夠的。

所以要用一種更自由的描述我們要的模式的辦法,它就是字符簇。要建立一個表示所有元音字符的字符簇,就把所有的元音字符放在一個方括號里:

[AaEeIiOoUu]

這個模式與任何元音字符匹配,但只能表示一個字符。用連字號可以表示一個字符的范圍,如:

[a-z]//匹配所有的小寫字母
[A-Z]//匹配所有的大寫字母
[a-zA-Z]//匹配所有的字母
[0-9]//匹配所有的數字
[0-9.-]//匹配所有的數字,句號和減號
[ frtn]//匹配所有的白字符

同樣的,這些也只表示一個字符,這是一個非常重要的。如果要匹配一個由一個小寫字母和一位數字組成的字符串,比如""z2""、""t6""或""g7"",但不是""ab2""、""r2d3"" 或""b52""的話,用這個模式:

^[a-z][0-9]$

盡管[a-z]代表26個字母的范圍,但在這里它只能與第一個字符是小寫字母的字符串匹配。

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

^[^0-9][0-9]$

這個模式與""&5""、""g7""及""-2""是匹配的,但與""12""、""66""是不匹配的。下面是幾個排除特定字符的例子:

[^a-z]//除了小寫字母以外的所有字符
[^/^]//除了""/""和""^""字符之外的所有字符
[^""']//除了雙引號("")和單引號(')之外的所有字符


特殊字符""."" (點,句號)在正規表達式中用來表示除了“新行”之外的所有字符。所以模式""^.5$""與任何兩個字符的、以數字5結尾和以其他非“新行”字符開頭的字符串匹配。模式"".""可以匹配任何字符串,除了空串和只包括一個“新行”的字符串。

PHP的正規表達式有一些內置的通用字符簇,列表如下:

字符簇含義
[[:alpha:]]任何字母
[[:digit:]]任何數字
[[:alnum:]]任何字母和數字
[[:space:]]任何白字符
[[:upper:]]任何大寫字母
[[:lower:]]任何小寫字母
[[:punct:]]任何標點符號
[[:xdigit:]]任何16進制的數字,相當于[0-9a-fA-F]

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品视频白浆免费视频| 欧美性猛交xxx| 91精品国产综合久久男男| 欧美精品18videos性欧美| 国产精品老女人视频| 亚洲三级免费看| 国产精品7m视频| 国产精品久久久久久网站| 国产一区视频在线| 激情亚洲一区二区三区四区| 久久伊人精品天天| 亚洲情综合五月天| 欧美激情精品久久久久久变态| 国产亚洲精品久久久优势| 亚洲国产精品成人va在线观看| 青青久久aⅴ北条麻妃| 亚洲激情电影中文字幕| 青青精品视频播放| 91色p视频在线| 97精品一区二区视频在线观看| 亚洲的天堂在线中文字幕| 亚洲激情成人网| 亚洲色图美腿丝袜| 神马久久久久久| 国产精品v片在线观看不卡| 日韩av中文字幕在线播放| 国产精品黄页免费高清在线观看| 久久影院资源网| 日韩av电影免费观看高清| 疯狂做受xxxx高潮欧美日本| 国内伊人久久久久久网站视频| 欧美精品videosex牲欧美| 国产精品1区2区在线观看| 中文字幕久热精品视频在线| 日韩av网址在线观看| 亚洲性视频网站| 亚洲iv一区二区三区| 国产成人精品一区二区| 国产精品va在线播放我和闺蜜| 欧美亚洲第一页| 欧美日韩免费在线观看| 91久久精品国产| 久久99久久99精品免观看粉嫩| 日韩欧美高清在线视频| 欧美另类xxx| 日韩精品欧美国产精品忘忧草| 亚洲国产精品小视频| 国产精品视频公开费视频| 欧美日韩中文字幕在线| 成人久久精品视频| 亚洲人成毛片在线播放| 久久久最新网址| 亚洲最大成人免费视频| 欧美电影在线播放| 国产香蕉精品视频一区二区三区| 亚洲自拍偷拍福利| 视频直播国产精品| 日韩欧美在线字幕| 中文字幕亚洲国产| 日韩av免费在线观看| 久久久久免费视频| 久久久成人精品| 国产91ⅴ在线精品免费观看| 国产精品手机播放| 欧美大人香蕉在线| 久久久综合免费视频| 国产亚洲视频在线| 亚洲www视频| 国内精品小视频在线观看| 国产免费一区二区三区香蕉精| 久久成年人视频| 亚洲欧美资源在线| 国产精品久久久久影院日本| 成人黄色短视频在线观看| 亚洲国产欧美久久| 久久久亚洲影院你懂的| 91亚洲国产精品| 色av吧综合网| 亚洲国产欧美自拍| 韩国v欧美v日本v亚洲| 57pao成人永久免费视频| 97在线视频免费观看| 26uuu久久噜噜噜噜| 欧美日韩亚洲视频| 欧美日韩国产丝袜另类| 国产精品草莓在线免费观看| 国产深夜精品福利| 日韩精品在线视频美女| 日本国产欧美一区二区三区| 国产日韩精品入口| 日韩精品在线免费观看| 亚洲经典中文字幕| 亚洲自拍偷拍视频| 欧美性xxxx| 国产精品18久久久久久首页狼| 日韩av片免费在线观看| 91久久精品国产91久久性色| 精品亚洲精品福利线在观看| 丝袜情趣国产精品| 久久久精品国产网站| 欧美日韩免费在线观看| 国产97在线视频| 91精品视频大全| 色噜噜狠狠色综合网图区| 久久久久在线观看| 国产亚洲精品一区二区| 97久久精品在线| 国产欧美日韩亚洲精品| 国产脚交av在线一区二区| 国产精品成人av性教育| 久久色在线播放| 国产日本欧美一区| 91久久精品美女| 日韩欧美中文字幕在线播放| 国产中文字幕日韩| 亚洲成人性视频| 亚洲少妇激情视频| 欧美国产日韩一区二区| 国产精品第3页| 日韩欧美在线观看视频| 久久国产色av| 97国产精品久久| 尤物99国产成人精品视频| 亚洲国产精品久久久久| 精品毛片网大全| 精品亚洲永久免费精品| 亚洲男人的天堂网站| 亚洲japanese制服美女| 69视频在线播放| 国产福利精品av综合导导航| 国产亚洲欧美另类中文| 国产亚洲视频在线| 91国产视频在线| 97香蕉超级碰碰久久免费软件| 国产欧美一区二区三区久久| 91欧美日韩一区| 日韩美女福利视频| 欧美区二区三区| 亚洲天堂av女优| 久久99亚洲热视| 热久久免费视频精品| www.欧美精品一二三区| 日韩经典一区二区三区| 久久全球大尺度高清视频| 国产精品入口尤物| 九九久久久久久久久激情| 成人黄色中文字幕| 亚洲视频国产视频| 日韩在线资源网| 国产91精品青草社区| 日韩在线视频导航| 欧美日韩精品在线视频| 一区二区三区 在线观看视| 亚洲欧洲在线观看| 久久69精品久久久久久国产越南| 亚洲一区999| 97涩涩爰在线观看亚洲| 欧美视频在线观看 亚洲欧| 96精品视频在线| 亚洲精品国产精品乱码不99按摩| 亚洲精品国产精品乱码不99按摩| 欧美高清电影在线看| 狠狠久久亚洲欧美专区| 欧美激情视频在线|