扣丁学堂盘点PHP开发常用的十个正则表达式验证及源码

2017-12-22 10:41:50 565浏览

        今天扣丁学堂给大家介绍一下关于PHP视频教程之正则表达式验证介绍及代码详情,首先PHP正则表达式是程序开发中一个重要的元素,它提供用来描述或匹配文本的字符串,如特定的字符、词或算式等。但在某些情况下,用正则表达式去验证一个字符串比较复杂和费时。下面扣丁学堂为你总结了10种常见的实用PHP正则表达式的写法,希望对你的工作有所帮助。


扣丁学堂盘点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开发工程师

热门专区

暂无热门资讯

课程推荐

微信
微博
15311698296

全国免费咨询热线

邮箱:codingke@1000phone.com

官方群:148715490

北京千锋互联科技有限公司版权所有   北京市海淀区宝盛北里西区28号中关村智诚科创大厦4层
京ICP备12003911号-6   Copyright © 2013 - 2019

京公网安备 11010802030908号