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

COL*_*OLD 10 javascript regex 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;
    }
}?
Run Code Online (Sandbox Code Playgroud)

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

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

谢谢.

bbe*_*ard 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}$/";
Run Code Online (Sandbox Code Playgroud)

另外在razor @@是一个普通的@符号,它应该在你的javascript中工作.

string filter = "/^[a-zA-Z0-9_.-]+@@[a-zA-Z0-9]+[a-zA-Z0-9.-]+[a-zA-Z0-9]+.[a-z]{0,4}$/";
Run Code Online (Sandbox Code Playgroud)