正则表达式测手机号码?手机号校验规则

发布时间:2023-12-01 00:40:05
发布者:网友

其实正则表达式测手机号码的问题并不复杂,但是又很多的朋友都不太了解手机号校验规则,因此呢,今天小编就来为大家分享正则表达式测手机号码的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!

一、正则是什么意思

.是任意字符可以匹配任何单个字符,例子:正则表达式r.t可以匹配这些字符串:rat、rut、rt,但是不匹配root。.*?表示匹配任意字符到下一个符合条件的字符例子:正则表达式a.*?xxx可以匹配abxxxaxxxxxabbbbbxxx扩展资料:?表示非贪婪模式,即为匹配最近字符如果不加?就是贪婪模式a.*bc可以匹配abcbcbc

二、手机号校验规则

varreg=/^1[3|4|5|7|8][0-9]{9}$/;//验证规则varphoneNum='15507621999';//手机号码varflag=reg.test(phoneNum);//true

三、正则表达式符号解释

1、正则表达式是用来匹配文本模式的工具,它由一系列符号组成。其中最基础的符号是字符,它可以匹配文本中的任何一个字符。另外还有元字符,用来表示特定的文本模式。比如,^表示匹配字符串开头,$表示匹配字符串结尾。还有通配符.,它可以匹配任意一个字符。在正则表达式中,方括号[]表示一个字符集合,可以匹配其中的任何一个字符。

2、还有重复符号,如*表示匹配前一个字符重复0次或多次,+表示匹配前一个字符重复1次或多次,?表示匹配前一个字符重复0次或1次。最后,还有分组符号(),用来将一组字符作为一个整体进行匹配。掌握这些符号,可以帮助我们更加高效地利用正则表达式进行文本匹配。

四、正则表达式匹配一个或者逗号分开的多个手机号码

有了单个手机号码的,多个手机号码还不好办吗~~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})#最后一个用来匹配没有逗号的号码

五、正则表达式@\

1、我们一个字符一个字符的进行分析

2、(.*?)匹配任意长度的任意字符但是后面的?表示采用非贪婪模式也就是说在遇到/字符之前的位置上尽可能多的匹配而不是一直匹配到最后一个/字符

3、([\w\d])\w表示任意字母或数字\d表示任意数字所以这里的[\w\d]写的有些问题因为[]内的内容只匹配一个字符所以([\w\d])和(\w)的意义应该是一样的

4、这个正则表达式应该可以改写为:

关于正则表达式测手机号码和手机号校验规则的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

——————————————小炎智能写作工具可以帮您快速高效的创作原创优质内容,提高网站收录量和各大自媒体原创并获得推荐量,点击右上角即可注册使用

小炎智能写作