正则匹配手机号,邮箱(关于正则表达式)

表达式:
| 表示或者
[] 表示或者
[a-z] 表示所有的小写字母
[A-Z] 表示所有的大写字母
[A-z] 表示所有的字母
[A-Za-z] 表示所有的字母
[0-9] 表示所有数字
[12] 表示1或者2
[^] 表示取反 [^0-9] 非数字

量词:
{n} 表示出现的次数
{n,m} 表示出现n到m次
{n,} 表示出现n到无限次
+ 表示1次到无限次 {1,}
* 表示0次到无限次 {0,}
? 表示0次到1次 {0,1}
^ 表示必须以…开头
$ 表示必须以…结束
^…$ 表示必须是绝对匹配
() 表示括号内的将作为一个整体

元字符:
. 查找单个字符(除了换行和行结束符之外的任意字符)
. 必须包含.
\w 所有字母,数字,下划线
\W 所有非字母,数字,下划线的值
\d 所有数字
\D 所有非数字
\s 包含空格
\S 不包含空格 只有空格是false
\b 包含单词边界 包括空格和左右两个单引号
\B 不包含单词边界 包括空格和左右两个单引号

手机号匹配:

var reg = /^1[3-9][0-9]{9}$/;
console.log(reg.test('13633345698'));   //true   reg.test()返回一个布尔值

if(!(reg.test('11111111111'))){ 
      alert("手机号码不合法,请重新输入");  
      return false; 
  } 

let reg2 = /^1(3[0-9]|4[01456879]|5[0-35-9]|6[2567]|7[0-8]|8[0-9]|9[0-35-9])\d{8}$/

邮箱匹配:
例:需满足以下要求(可根据实际情况和需求对应改变)

xiao_ming.fdjskfjk@qq.com.cn
xiaoming@atguigu.com
第一部分:
xiao_ming 任意字母,数字,下划线,中划线 1次到无限次
第二部分: 整体出现0次到2次
.fdjskfjk 任意字母,数字,下划线,中划线 1次到30次
第三部分:
@
第四部分:
qq 字母或者数字 1次到10次
第五部分: 整体1次到2次
.com .和 字母3次

//第一部分   (\w|-)+
//第二部分   (\.(\w|-){1,30}){0,2}
//第三部分   @
//第四部分   [A-z0-9]{1,10}
//第五部分   (\.[A-z]{2,3}){1,2} 
//最终进行绝对匹配
var reg = /^(\w|-)+(\.(\w|-){1,30}){0,2}@[A-z0-9]{1,10}(\.[A-z]{2,3}){1,2}$/;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值