我只需要在电子邮件字段中进行一次验证,即域名说'某事'。
例:
adarsh.k@something.com -valid
adarsh.k@gmail.com - invalid
我在文本框中输入了电子邮件ID,如下所示,您能告诉我正则表达式以进行基本的上述验证吗?
var emailId = $('#txtRcpntAdress').val();
我正在尝试使用下面给出的 reqular 表达式作为模式。
var validDomain = "something";
var pattern = new RegExp("([A-Za-z0-9_-.])"+"@" + validDomain + "(.[a-zA-Z]{2,4})$");
它抛出一个错误
Microsoft JScript runtime error: Invalid range in character set
你能帮忙吗?
谢谢阿达什
这应该可以解决问题:
var validDomain = "something";
var pattern = new RegExp("^[A-Za-z0-9_\-\.]+@" + validDomain + "(.[a-zA-Z\.]{2,5})$");
var emailId = "adarsh.k@something.com";
if( emailId.match(pattern) )
{
// ... email is valid
}
如果要匹配完整的域,只需更改前两行:
var validDomain = "something.com";
var pattern = new RegExp("^[A-Za-z0-9_\-\.]+@" + validDomain + "$");
var reg = /^w+@something.com$/;
reg.test("adarsh.k@something.com")
> true
reg.test("adarsh.k@gmail.com")
> false
编辑:似乎我误解了你的问题...正确的正则表达式是:
var validDomain = "something";
var pattern = new RegExp("([A-Za-z0-9_\-\.])"+"@" + validDomain + "(.[a-zA-Z]{2,4})$");