PHP正则验证类(PHP5)
关于正则验证,在php中已经应用得非常广泛了,比如我们常见的验证用户名,验证密码,验证email,验证身份证,验证座机等,这些验证中都少不了正则验证,正则表达式的语法本身是非常繁琐的,尤其是语法里的句句点点,但如果我们把正则表达式用顺了,对于编程来说是一个很大的帮助,你会发现自己的工作效率大大的提高了。
如果自己还不能够很好的去编写php正则表达式,那么就可以去收集一些已经写好的正则表达式,因为正则表达式的验证已经很成熟了,网上有许多成型正则验证,直接拿来用可以提高自己的编程效率,下面是一个网上收集来的 php 正则验证类,源码不是很多,可以自己作补充。
[code lang="php"]
=$min && strlen($str)<=$max)
{
return true;
}else{
return false;
}
}
//验证Email
static function Email($str)
{
$str=self::strTrim($str);
if(preg_match("/^([a-z0-9_]|\-|\.)+@(([a-z0-9_]|\-)+\.){1,2}
[a-z]{2,4}$/i",$str))
{
return true;
}else{
return false;
}
}
//验证身份证(中国)
static function idCard($str)
{
$str=self::strTrim($str);
if(preg_match("/^([0-9]{15}|[0-9]{17}[0-9a-z])$/i",$str))
{
return true;
}else{
return false;
}
}
//验证座机电话
static function Phone($type,$str)
{
$str=self::strTrim($str);
switch($type)
{
case "CHN":
if(preg_match("/^([0-9]{3}|0[0-9]{3})-[0-9]{7,8}$/
",$str))
{
return true;
}else{
return false;
}
break;
case "INT":
if(preg_match("/^[0-9]{4}-([0-9]{3}|0[0-9]{3})-[0-9]
{7,8}$/",$str))
{
return true;
}else{
return false;
}
break;
}
}
}
$str="008-010-2711204";
if(regExp::Phone("INT",$str))
{
echo "ok";
}else{
echo "no";
}
?>
[/code]