一、写正则的诀窍
正则的诀窍:写一点、测一点。
因为,我们需要不断的正则,用preg_match对比是不是能匹配成功。成功了,再写后面的一点。直到写完,全部匹配成功为止!
例如,我要写一个邮箱的正则。我先要做的事情,将常用的邮箱格式全部列出来。例如:
liwenkai@phpxy.com liwenkai@corp.baidu.cm liwenkai@126.com l_w_k@xxx.com 12345@qq.com
常用的格式主要有这样一些。那我们就可以来分析:
1. 先匹配@之前的字符 w+(因为是0-9A-Za-z_)
2. 第二个跟一个@符
3. 第三个再写上[a-zA-Z0-9-]+ 因为qq和126这些主域名是不能有下划线的
4. corp.baidu. 或者是126. 通常邮箱后缀都是这样的。所以我们可以写成:([a-zA-Z0-9-]+.){1,2}
5. 上面的是将.转义,让它是本身的意思。括号重复的区间最少一次,最多两次。
6. 后面接下com|cn|org|gov.cn|net|edu.cn等就可以了
因此,我们的正则表达示使用:
/w+@([a-zA-Z0-9-]+.){1,2}(com|cn|org|gov.cn|net|edu.cn)/
邮箱的正则就成功了。
二、常用正则函数
我们常用的正则函数有:
大家针对这这些函数,对着手册用一下。有问题或遇到问题可以来我们的官网提问。
正则关于面试常遇到的问题
三、面试中经常考到的几个正则表达式是
1.匹配邮箱
2.匹配手机号
3.匹配一个网址
4.用正则匹配某个格式,取出某个例
5.写一个采集器
其他....
常用正则表达示
下面的是快速查找的正则表达式的方法,大家一定得知道具体意思。
需要的时候直接搜索复制即可!