如何验证Email地址?

问题描述

在JavaScript中,如何验证Email地址的合法性?

解决方案

最好的方法是,使用正则表达式:

function validateEmail(email) {
    var re = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
    return re.test(String(email).toLowerCase());
}

下面的正则表达式,可以接受包含所有unicode字符在内的邮箱地址验证:

var re = /^(([^<>()\[\]\.,;:\s@\"]+(\.[^<>()\[\]\.,;:\s@\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\s@\"]+\.)+[^<>()[\]\.,;:\s@\"]{2,})$/i;

记住,我们不能仅仅依靠客户端验证,因为JavaScript可能会被禁用;我们还应当在服务器端也进行校验。

用户头像
登录后发表评论