特性如下:
- 邮箱首字符和末尾字符必须为字母或数字,邮箱名可以全是字母或数字,或者是两者的组合;
- 连字符"-"、下划线"_" 和英文句号点".",仅能放在字母或数字中间,且不能连续出现(即- 其单个符号的左右只能是字母或数字);
- 域名可以带连字符"-", 且可以是多级域名 ,还可以有多个域名后缀;
- 不区分大小写;
- 不限定邮箱字符串的具体长度。
var emailReg=/^[\da-z]+([\-\.\_]?[\da-z]+)*@[\da-z]+([\-\.]?[\da-z]+)*(\.[a-z]{2,})+$/i;
//测试
console.log(emailReg.test('_abc@sample.com')); // false
console.log(emailReg.test('a23..bc@sample.com')); // false
console.log(emailReg.test('a23.-bc@sample.com')); // false
console.log(emailReg.test('a23.bc.@sample.com')); // false
console.log(emailReg.test('a23.bc@@sample.com')); // false
console.log(emailReg.test('2abc@sample.com')); // true
console.log(emailReg.test('2345@sample.com')); // true
console.log(emailReg.test('a2-3.b_c3@sample.com')); // true
console.log(emailReg.test('a2-3.b_c3@sam-ple.com.CN')); // true