正则表达式确认电子邮件

时间:2012-01-27 20:21:18

标签: javascript

我正在使用以下代码来确保填写字段。如何添加一些代码以确保它是有效的电子邮件?

function verify() {
if ($("#ddlBusinessName").val() == "0") {
            alert("Please select the name.");
        }
        else if ($("#txtEmail").val().length <= 0 || $("#txtEmailConfirm").val().length <= 0) {
            alert("Please enter the email address and confirm the email address.");
             else if ($("#TxtPassword").val().length <=0 || $("#TxtConfirmPassword").val().length <=0) {
            alert("Please enter your password.");
        }

         }

修改 我怎么能在我的代码中实现它呢?

 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(email);
} 

4 个答案:

答案 0 :(得分:1)

验证电子邮件地址的唯一安全方法实际上是向其发送电子邮件。如果失败并且(永久 - 灰名单错误将是暂时的)错误代码,则您知道该地址无效。

当然你不能用JavaScript做到这一点 - 所以我将客户端检查限制在一个非常简单的检查 - 像/^[^@ ]+@[^@ ]+\.[^@ ]+$/(thx @NedBatchelder)这样的工作。

答案 1 :(得分:1)

我刚刚回答了类似的问题。 https://stackoverflow.com/a/12674524/340736

对于您的客户端验证,我建议您使用Verimail.js。它根据RFC 822正则表达式验证您的电子邮件地址,但也是所有已注册TLD的完整列表。

答案 2 :(得分:0)

尝试RegExpLib Site Reference

请注意,您正在验证可能存在的电子邮件,而不是 存在的电子邮件!

答案 3 :(得分:0)

不要试图通过电子邮件地址验证过于花哨。试试这个:Humane email validation