匹配邮箱

先说出常见的邮箱号格式:

[email protected]

[email protected]

[email protected]

[email protected]

[email protected]

观察特点

1、@左边:可以是字母数字下划线,甚至特殊符号-也有,可以出现一次或更多次
2、@:一定有@特殊符号
3、@右边:其中qq. 、163. 当成一个整体来匹配,其中yoo邮箱有yoo. 和com. ,说明这个整体可以出现多次
4、最后只能是字母


匹配邮箱_第1张图片
分析

匹配邮箱_第2张图片
图形化

代码如下(注意下文说明)




    
    Document


    



匹配邮箱_第3张图片
结果图
注意:由于上面正则括号的内容我们只是当成一个整体来匹配,但是后续没有引入它,为了优化,不让匹配的内容进入正则缓冲区,在括号前面加个?:来进行优化 。

var reg = /^[0-9a-zA-Z_-]+@(?:[0-9a-zA-Z_]+.)+[a-zA-Z]{2,6}$/


匹配邮箱_第4张图片
图形化

非捕获组,外层就不会有个虚线框包裹着
注意:

1、在正则字符组[]中的特殊字符可以不用转义,如[-_+@.]

2、因为+代表前面的规则可以出现一次或多次,如果写在字符组[]中,就是匹配一个+符号。

建议不要把+写在字符组的最后面,会出现错误。

你可能感兴趣的:(匹配邮箱)