正则表达式:验证手机和电话号码

写了一个验证手机号和电话号码的正则表达式,在这里存档,以备之后用到。正则表达式

 

function checkMobiles(theForm) {
  //return /^((13|15|18|14|17)+\d{9})$/.test(theForm);
//return /(^[0-9]{3,4}\-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^\([0-9]{3,4}\)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$)/.test(theForm);
return /(^1\d{10}$|^(0\d{2,3}-?|\(0\d{2,3}\))?[1-9]\d{4,7}(-\d{1,8})?$)/.test(theForm);
}

 

规则说明:spa

一、能够是1开头的11位数字(手机号)
二、能够是“区号-电话号-分机号”或者是“(区号)电话号-分机号”格式
三、区号是0开头的3~4位数字,能够没有区号orm

四、电话号是5~8位数字,不能以0开头
五、分机号是1~8位数字,能够没有分机号io

 

合法数据示例:function

13812341234test

010-12345678数据

(0432)1234567-1234di