电子邮件validatior Javascript

时间:2017-06-20 04:52:43

标签: angularjs regex

这是我的javascript代码

 $scope.isValidEmailAddress = function(emailAddress) {
            // var pattern = new RegExp(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/);
            var pattern = new RegExp(/^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/);
            return pattern.test(emailAddress);
        };

当我验证以下电子邮件时,它将返回true,但事实并非如此,我需要验证此类电子邮件

rohan@yahoo.co.in.in

应该是无效的电子邮件

2 个答案:

答案 0 :(得分:1)

根据评论更新。

如果您希望最多可以添加两个顶级域名,则可以将第二个域名设为可选。

$scope.isValidEmailAddress = function(emailAddress) {
    // Same regex as before but an additional TLD regex has been added.
    var pattern = new RegExp(/^[\w\-\.\+]+\@[a-zA-Z0-9\-]+\.([a-zA-z0-9]{2,4}\.)?[a-zA-z0-9]{2,4}$/);
    return pattern.test(emailAddress);
};

答案 1 :(得分:0)

从jquery validate plugin的电子邮件方法获取正则表达式:

https://cdn.jsdelivr.net/jquery.validation/1.16.0/jquery.validate.js