一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

手机号码格式正则表达式

时间:2011-07-21 编辑:简简单单 来源:一聚教程网

手机号码格式正则表达式

匹配国内电话号码:d{3}-d{8} ¦d{4}-d{7}   
评注:匹配形式如 0511-4405222 或 021-87888822   

前端代码我使用jquery.validate.js,代码如下:
 

JavaScript代码

 


 这只是一个不精确的验证,只能大概验证到一个范围而已,所以重点还在后面。

PHP代码

$mobilephone=trim($_POST["smMobilePhone"]);   
//手机号码的正则验证   
if(preg_match("/^13[0-9]{1}[0-9]{8}$|15[0189]{1}[0-9]{8}$|189[0-9]{8}$/",$mobilephone)){   
    //验证通过   
       
}else{   
    //手机号码格式不对   
       
}
看实例

php教程
//正则表达式
$tel = "15551530459";//作者的手机号码,如果有疑问可以电话联系我,我的邮箱是admin@www.3ppt.com
if(strlen($tel) == "11")
{
//上面部分判断长度是不是11位
$n = preg_match_all("/13[123569]{1}d{8}|15[1235689]d{8}|188d{8}/",$tel,$array);
/*接下来的正则表达式("/131,132,133,135,136,139开头随后跟着任意的8为数字 '|'(或者的意思)
* 151,152,153,156,158.159开头的跟着任意的8为数字
* 或者是188开头的再跟着任意的8为数字,匹配其中的任意一组就通过了
* /")*/

var_dump($array); //看看是不是找到了,如果找到了,就会输出电话号码的
}else
{
echo "长度必须是11位";
}
/*
* 虽然看起来复杂点,清楚理解!
* 如果有更好的,可以贴出来,分享快乐!
* */
?>

其它参考
匹配腾讯QQ号:[1-9][0-9]{4,}   
评注:腾讯QQ号从10000开始   
  
匹配中国邮政编码:[1-9]d{5}(?!d)   
评注:中国邮政编码为6位数字   
  
匹配身份证:d{15} ¦d{18}   
评注:中国的身份证为15位或18位   
  
匹配ip地址:d+.d+.d+.d+   
评注:提取ip地址时有用   
  
匹配特定数字:   
^[1-9]d*$    //匹配正整数   
^-[1-9]d*$   //匹配负整数   
^-?[1-9]d*$   //匹配整数   
^[1-9]d* ¦0$  //匹配非负整数(正整数 + 0)   
^-[1-9]d* ¦0$   //匹配非正整数(负整数 + 0)   
^[1-9]d*.d* ¦0.d*[1-9]d*$   //匹配正浮点数   
^-([1-9]d*.d* ¦0.d*[1-9]d*)$  //匹配负浮点数   
^-?([1-9]d*.d* ¦0.d*[1-9]d* ¦0?.0+ ¦0)$  //匹配浮点数   
^[1-9]d*.d* ¦0.d*[1-9]d* ¦0?.0+ ¦0$   //匹配非负浮点数(正浮点数 + 0)   
^(-([1-9]d*.d* ¦0.d*[1-9]d*)) ¦0?.0+ ¦0$  //匹配非正浮点数(负浮点数 + 0)   
评注:处理大量数据时有用,具体应用时注意修正   
  
匹配特定字符串:   
^[A-Za-z]+$  //匹配由26个英文字母组成的字符串   
^[A-Z]+$  //匹配由26个英文字母的大写组成的字符串   
^[a-z]+$  //匹配由26个英文字母的小写组成的字符串   
^[A-Za-z0-9]+$  //匹配由数字和26个英文字母组成的字符串   
^w+$  //匹配由数字、26个英文字母或者下划线组成的字符串   
评注:最基本也是最常用的一些表达式   

热门栏目