随着时代的发展,互联网技术日新月异。互联网与生活的关系也越来越密切。正则表达式的作用就是方便
我们从很大、很多的内容里面获取到我们所需要的内容。此外,我们也可以通过一些常见的正则匹配来验证一些东西,比如网站表单提交的时候,有时候需要提交电话号码、邮箱地址,我们可以通过正则来判断用户是否填的是相关内容,避免用户乱填导致我们获取一些没用的信息。下面我给大家具体讲解一下正则表达式的用法。
这里我们需要了解一些简单的正则匹配规则,这样当我们看到一个正则表达式的时候,我们才能明白他是什么意思,也可以自己写一些正则表达式,去验证一些东西。
1.首先我们了解从HTML页面获取我们所需要的内容。
$text=file_get_contents('https:://');
通过上面的方法,我们获取到我们需要的网页内容。然后我们通过preg_match与preg_match_all方法进行正则
匹配
preg_match_all(string$pattern,string$subject[,array$matches[,int$flags=PREG_PATTERN_ORDER[,int$offset=0]]])
$pattern:要搜索的模式,字符串形式。
$subject:输入字符串。
$matches:多维数组,作为输出参数输出所有匹配结果,数组排序通过flags指定。
preg_match只匹配一次,preg_match_all是全文匹配,即所有跟表达式一致的都找出来。所以我们在HTML页面
正则匹配内容的时候,应该使用preg_match_all方法。
2.通过正则来验证表单内容
邮箱的正则表达式:w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\.)+[A-Za-z]{2,14};
手机的正则表达式:0?(13|14|15|18|17)[0-9]{9};
通过这两个正则表达式,我们可以通过上面的方法,来进行对表单的验证,从而通过用户获取到我们所需要的用户
信息。
最后给大家一些常见的正则表达式:
网址url的正则表达式:^((https|http|ftp|rtsp|mms)?:\/\/)[^\s]+;
邮政编号的正则表达式:d{6};
身份证号的正则表达式:d{17}[\d|x]|\d{15};
格式日期的正则表达式:d{4}(\-|\/|.)\d{1,2}\1\d{1,2};
ip地址的正则表达式:(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)\.(25[0-5]|2[0-4]\d|[01]\d{2}|[19]?\d)