用js的正则表达式检测电话号码,要求,必须是1开头,只能是数字,并且是11位数字,这儿正则表达式怎么写

JavaScript011

用js的正则表达式检测电话号码,要求,必须是1开头,只能是数字,并且是11位数字,这儿正则表达式怎么写,第1张

正则表达式:/^1\d{10}$/

答案演示:

表达式意思解析:

(1)以1为开头;

(2)\d表示数字,\d{10}表示出现10次数字;

(3)$表示结尾,即匹配输入字符串的结尾位置;

(4)根据(1)、(2)、(3),正好表示11位数字

扩展资料:

更严格的电话号码校验正则表达式:

(1)/^1(3|4|5|7|8)\d{9}$/ ,这个表达式才是真正有效的电话号码的正则表达式,表示必须以1做开头,第二位可以是3,4,5,7,8,中的任意一位,后面9位数字可以是0-9任意数字。

身份证的校验正则表达式:

(1)(^\d{15}$)|(^\d{17}([0-9]|X)$),表示匹配15位或18位身份证,且可以匹配出以X结尾的身份证号码。

参考资料来源:百度百科-正则表达式

有了单个手机号码的,多个手机号码还不好吗~~1[7358]\d{9}这是单个号码的1开头,第二位是7358中的一个,后面还有9个数字,共11位/(1[7358]\d{9}\s*,\s*)*(1[7358]\d{9})/这是多个号码的解释:1[7358]\d{9}#匹配一个号码\s*,\s*#匹配号码之间的逗号,号码和逗号之间允许有空格也就是\s*(1[7358]\d{9}\s*,\s*)*#整体合起来,*星号表示可以重复任意次,也就是可以有多个号码(1[7358]\d{9})#最后一个用来匹配没有逗号的号码

// 正则

var str = '111_abc_222'

var match = str.match(/(^\d+)|(\d+$)/g)

var num1 = match[0]

var num2 = match[1]

alert(num1)

alert(num2)

// 不用非要正则吧

var str = '111_abc_222'

var arr = str.split('_')

var num1 = arr[0]

var num2 = arr[arr.length - 1]

alert(num1)

alert(num2)