邮箱正则表达式(用js正则验证邮箱格式)
如何用js正则验证邮箱格式,首先要知道邮箱格式有哪几种,比如常用的QQ邮箱就是纯数字的,邮箱域至少有一个“.”和两个单词,再严格点那么最后的顶级域至少要2个字母,最大呢?以域名“name”为准,那么最大就是4,宽松点就设为5吧。
一、市面上有以下几种邮箱格式:
1、纯数字的QQ邮箱,比如:1917843637@qq.com
2、纯字母,比如:dfvdfdf@7dadi.com
3、字母数字混合,比如:df666kkkdf@7dadi.com
4、带点的,比如:dfvdf.df@7dadi.com
5、带下划线,比如:dfvdf_df@7dadi.com
6、带连接线,比如:dfvdf-df@7dadi.com
二、邮箱格式说明:
1、邮箱域至少有一个“.”和两个单词,再严格点那么最后的顶级域至少要2个字母,最大呢?以域名“name”为准,那么最大就是4,宽松点就设为5吧^_^。
2、当然以上不可能的情况:以“_”或“-”开头或者结尾,包含特殊符号的。
因此,得出的js邮箱正则表达式为:
[a-zA-Z0-9]+([-_.][A-Za-zd]+)*@([a-zA-Z0-9]+[-.])+[A-Za-zd]{2,5}$
三、js邮箱正则表达式实例代码:
//利用字面量创建js正则表达式 let reg = /^[a-zA-Z0-9]+([-_.][A-Za-zd]+)*@([a-zA-Z0-9]+[-.])+[A-Za-zd]{2,5}$/ console.log(reg.test('7dadi.com')) //false 不是邮箱 console.log(reg.test('1917843637@qq.com')) //true是邮箱(纯数字的QQ邮箱) console.log(reg.test('dfvdfdf@7dadi.com')) //true是邮箱(纯字母) console.log(reg.test('df666kkkdf@7dadi.com')) //true是邮箱(字母数字混合) console.log(reg.test('dfvdf.df@7dadi.com')) //true是邮箱(带点的) console.log(reg.test('dfvdf_df@7dadi.com')) //true是邮箱(带下划线) console.log(reg.test('dfvdf-df@7dadi.com')) //true是邮箱(带连接线)
四、控制台打印的结果:
除注明外的文章,均为来源:老汤博客,转载请保留本文地址!
原文地址:https://tangjiusheng.cn/js/332.html
原文地址:https://tangjiusheng.cn/js/332.html
大家都在看