正则表达式以查找特定域的电子邮件地址

时间:2010-01-28 10:56:29

标签: javascript regex

我想验证用户输入的电子邮件地址,就像格式anything@iti.gov.eg一样。 iti.gov.eg必须在电子邮件地址中写入。用户必须在文本框中以该格式输入他的电子邮件地址。

如何从文本框中检索并检查它?

我的代码是:

var r=/^([a-z\.])+\@(iti)+\.+(gov)+\.+(eg)+$/;
if (!r.test(string))
    alert("the email is not correct");
else 
    alert("your email is correct");

但这是错误的。有人可以帮我吗?

4 个答案:

答案 0 :(得分:3)

请参阅此问题,了解如何使用JavaScript中的正则表达式验证电子邮件:

Validate email address in Javascript?

一旦您知道它是有效的电子邮件地址,您就可以检查以确保它包含字符串@iti.gov.eg(不区分大小写),这是一项更容易的任务。

答案 1 :(得分:0)

是的,这是错误的,因为anything@itiiti.govgov.egeg将匹配。因为+意味着一次或多次。

您只需要/^[a-z.]+@iti\.gov\.eg$/

答案 2 :(得分:0)

注意正则表达式中的点:你写。+表示1到n个随机字符。我想你的意思是:

/^([a-zA-Z0-9]+)@iti\.gov\.eg$/

答案 3 :(得分:0)

 /^[a-z][\w.+-]+@iti\.gov\.eg$/

此正则表达式确保名称部分以字母开头。 .+-等是电子邮件中的有效字符。

是的,email validation是一件棘手的事。