PHP開發(fā)基礎(chǔ)教程之寫正則的訣竅
一、寫正則的訣竅
正則的訣竅:寫一點(diǎn)、測(cè)一點(diǎn)。
因?yàn)?,我們需要不斷的正則,用preg_match對(duì)比是不是能匹配成功。成功了,再寫后面的一點(diǎn)。直到寫完,全部匹配成功為止!
例如,我要寫一個(gè)郵箱的正則。我先要做的事情,將常用的郵箱格式全部列出來。例如:
liwenkai@phpxy.com liwenkai@corp.baidu.cm liwenkai@126.com l_w_k@xxx.com 12345@qq.com
常用的格式主要有這樣一些。那我們就可以來分析:
1. 先匹配@之前的字符 \w+(因?yàn)槭?-9A-Za-z_)
2. 第二個(gè)跟一個(gè)@符
3. 第三個(gè)再寫上[a-zA-Z0-9-]+ 因?yàn)閝q和126這些主域名是不能有下劃線的
4. corp.baidu. 或者是126. 通常郵箱后綴都是這樣的。所以我們可以寫成:([a-zA-Z0-9-]+.){1,2}
5. 上面的是將.轉(zhuǎn)義,讓它是本身的意思。括號(hào)重復(fù)的區(qū)間最少一次,最多兩次。
6. 后面接下com|cn|org|gov.cn|net|edu.cn等就可以了
因此,我們的正則表達(dá)示使用:
/\w+@([a-zA-Z0-9-]+.){1,2}(com|cn|org|gov.cn|net|edu.cn)/
郵箱的正則就成功了。
二、常用正則函數(shù)
我們常用的正則函數(shù)有:
大家針對(duì)這這些函數(shù),對(duì)著手冊(cè)用一下。有問題或遇到問題可以來我們的官網(wǎng)提問。
正則關(guān)于面試常遇到的問題
三、面試中經(jīng)??嫉降膸讉€(gè)正則表達(dá)式是
1.匹配郵箱
2.匹配手機(jī)號(hào)
3.匹配一個(gè)網(wǎng)址
4.用正則匹配某個(gè)格式,取出某個(gè)例
5.寫一個(gè)采集器
其他....
常用正則表達(dá)示
下面的是快速查找的正則表達(dá)式的方法,大家一定得知道具體意思。
需要的時(shí)候直接搜索復(fù)制即可!