扣丁学堂盘点PHP开发常用的十个正则表达式验证及源码
2017-12-22 10:41:50
565浏览
今天扣丁学堂给大家介绍一下关于PHP视频教程之正则表达式验证介绍及代码详情,首先PHP正则表达式是程序开发中一个重要的元素,它提供用来描述或匹配文本的字符串,如特定的字符、词或算式等。但在某些情况下,用正则表达式去验证一个字符串比较复杂和费时。下面扣丁学堂为你总结了10种常见的实用PHP正则表达式的写法,希望对你的工作有所帮助。
1、验证Email地址
这是一个用于验证电子邮件的正则表达式。但它并不是高效、完美的解决方案。在此不推荐使用。
$email="test@ansoncheung.tk";
if
(preg_match('/^[^09][azAZ09_]+([.][azAZ09_]+)[@][azAZ09_]+([.][azAZ09_]+)[.][azAZ]{2,4}$/',$email))
{
echo"Youremailisok.";
}else{
echo"Wrongemailaddressformat";
}
为了更加有效验证电子邮件地址,推荐使用filer_var。
if(filter_var('test+email@ansoncheung',FILTER_VALIDATE_EMAIL)){
echo"Youremailisok.";
}else{
echo"Wrongemailaddressformat.";
}
2、验证用户名
这是一个用于验证用户名的实例,其中包括字母、数字(AZ,az,09)、下划线以及最低5个字符,最大20个字符。同时,也可以根据需要,对最小值和最大值做合理的修改。
$username="user_name12";
if(preg_match('/^[az\d_]{5,20}$/i',$username)){
echo"Yourusernameisok.";
}else{
echo"Wrongusernameformat.";
}
3、验证电话号码
这是一个验证美国电话号码的实例。
$phone="(021)4232323";
if(preg_match('/\(?\d{3}\)?[\s.]?\d{3}[\s.]\d{4}/x',$phone)){
echo"Yourphonenumberisok.";
}else{
echo"Wrongphonenumber.";
}
4、验证IP地址
这是一个用来验证IPv4地址的实例。
$IP="198.168.1.78";
if
(preg_match('/^(([19]?[09]|1[09]{2}|2[04][09]|25[05]).){3}([19]?[09]|1[09]{2}|2[04][09]|25[05])$/',$IP))
{
echo"YourIPaddressisok.";
}else{
echo"WrongIPaddress.";
}
5、验证邮政编码
这是一个用来验证邮政编码的实例。
$zipcode="123455434";
if(preg_match("/^([09]{5})([09]{4})?$/i",$zipcode)){
echo"YourZipcodeisok.";
}else{
echo"WrongZipcode.";
}
6、验证SSN(社会保险号)
这是一个验证美国SSN的实例。
$ssn="333232329";
if(preg_match('/^[\d]{3}[\d]{2}[\d]{4}$/',$ssn)){
echo"YourSSNisok.";
}else{
echo"WrongSSN.";
}
7、验证信用卡号
$cc="378282246310005";
if
(preg_match('/^(?:4[09]{12}(?:[09]{3})?|5[15][09]{14}|6011[09]{12}|3(?:0[05]|[68][09])[09]{11}|3[47][09]{13})$/',
$cc)){
echo"Yourcreditcardnumberisok.";
}else{
echo"Wrongcreditcardnumber.";
}
8、验证域名
$url="http://ansoncheung.tk/";
if
(preg_match('/^(http|https|ftp):\/\/([AZ09][AZ09_](?:\.[AZ09][AZ09_])+):?(\d+)?\/?/i',
$url)){
echo"Yoururlisok.";
}else{
echo"Wrongurl.";
}
9、从特定URL中提取域名
4$url="http://ansoncheung.tk/articles";
preg_match('@^(?:http://)?([^/]+)@i',$url,$matches);
$host=$matches[1];
echo$host;
10、将文中关键词高亮显示
$text="SamplesentencefromAnsonCheung.tk,regularexpressionhasbecome
popularinwebprogramming.Nowwelearnregex.Accordingtowikipedia,Regular
expressions(abbreviatedasregexorregexp,withpluralformsregexes,regexps,
orregexen)arewritteninaformallanguagethatcanbeinterpretedbya
regularexpressionprocessor";
$text=preg_replace("/\b(regex)\b/i",'\1',$text);
echo$text;
以上就是关于十个实用的PHP正则表达式的详细介绍,这是一篇对开发人员很有用的文章,赶紧收藏起来吧,最后想要学习PHP开发技术的小伙伴不要犹豫了,扣丁学堂是
PHP培训技术的最佳选择,想要PHP视频教程的小伙伴现在就联系我们的咨询老师领取吧,机会总是留给有准备的人的!扣丁学堂PHP开发工程师技术交流群:374332265。
【关注微信公众号获取更多学习资料】
查看更多关于“php培训资讯”的相关文章>>
标签:
PHP培训
PHP视频教程
PHP从入门到精通
PHP学习路线图
PHP开发工程师