一般我们在WEB端新注册或者登陆账户的时候,对于字段的验证不仅仅是需要验证其是否为空或者长度,有些特殊的字段,比如EMAIL邮箱我们需要验证是不是邮箱的格式,比如是都带有@符号等。刚才在练习PHP程序脚本制作会员注册功能的时候用到邮箱账户验证正则表达,可以适当的过滤邮箱的规则。
这里可以使用到2种方法,一种是用preg_match进行验证,一种是用JS判断。
第一、PHP方法
preg_match("/^[0-9a-zA-Z]+@(([0-9a-zA-Z]+)[.])+[a-z]{2,4}$/i",$email );
使用方法:
<?php
function isEmail($email){
if(preg_match("/^[0-9a-zA-Z]+@(([0-9a-zA-Z]+)[.])+[a-z]{2,4}$/i",$email )){
return '是邮箱';
}else{
return '不是邮箱';
}
}
?>
或者直接用IF判断:
if(!preg_match("/^[0-9a-zA-Z]+@(([0-9a-zA-Z]+)[.])+[a-z]{2,4}$/i",$email )){
exit('错误:电子邮箱格式错误。<a href="javascript:history.back(-1);">返回</a>');
}
第二、JS判断方法
myreg = /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,4}$/;
使用方法:
<script type="text/javascript">
function isEmail(val){
var myreg = /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,4}$/;
if(!myreg.test(val))
return '不是邮箱';
return '是邮箱';
};
alert( isEmail('i@julying.com') );
</script>
以上PHP和JS两种方法,根据我们实际的需要和项目使用,老蒋这里用了第一种方法。
本文出处:老蒋部落 » 两种PHP用户注册邮箱验证正则表达式方法 | 欢迎分享( 公众号:老蒋朋友圈 )