在razor页面上使用正则表达式验证电子邮件地址

时间:2012-03-06 19:05:06

标签: javascript regex razor

您好我正在使用razor并尝试使用正则表达式验证电子邮件地址验证功能

function validateEmail(txtEmail){
   var a = document.getElementById(txtEmail).value;
   var filter = /^[a-zA-Z0-9_.-]+@[a-zA-Z0-9]+[a-zA-Z0-9.-]+[a-zA-Z0-9]+.[a-z]{0,4}$/;
    if(filter.test(a)){
        return true;
    }
    else{
        return false;
    }
}​

但由于正则表达式有一个@符号razor认为它是语法的一部分而且给我一个错误。

无论如何都要避免确保剃刀无视@登录JavaScript

感谢。

3 个答案:

答案 0 :(得分:10)

Unicode可以像这样工作

string filter = "/^[a-zA-Z0-9_.-]+\\u0440[a-zA-Z0-9]+[a-zA-Z0-9.-]+[a-zA-Z0-9]+.[a-z]{0,4}$/";

或者在razor @@是一个普通的@符号,它应该在你的javascript中工作。

string filter = "/^[a-zA-Z0-9_.-]+@@[a-zA-Z0-9]+[a-zA-Z0-9.-]+[a-zA-Z0-9]+.[a-z]{0,4}$/";

答案 1 :(得分:0)

试试这可能会对你有所帮助

function validateEmail(email) { 
    var re = /^[_a-z0-9-A-Z-]+(\.[_a-z0-9-A-Z-]+)*@[a-z0-9-A-Z-]+(\.[a-z0-9-A-Z-]+)*(\.[a-z]{2,4})$/;
    return re.test(email);
} 

答案 2 :(得分:0)

通常检查电子邮件的格式是否有效。要验证电子邮件地址,我们需要使用正则表达式。在MVC剃须刀中,我们应该使用@@符号来执行验证。 MVC razor:

var emailRegEx = / ^(([^<>()[] \。,;:\ s @@ \"] +(。[^<>()[] \。 ;:\ S @@ \"] +)*)|(\&#34 + \&#34))@@(([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,}))$ /;

普通Html:

对于正常情况,我们应该使用@符号来执行验证

var emailRegEx = / ^(([^<>()[] \。,;:\ s @ \"] +(。[^<>()[] \。, ;:\ S @ \"] +)*)|(\&#34 + \&#34))@(([0-9] {1,3} [0-9。 ] {1,3} [0-9] {1,3} [0-9] {1,3}])|。。(([A-ZA-Z-0-9] +)+ [一-Za-Z] {2,}))$ /;

了解详情,请访问