【发布时间】:2012-12-20 12:19:33
【问题描述】:
我在一个网站上工作,在那里我编写了以下正则表达式来验证电子邮件 ID,并在正则表达式验证器中使用了该正则表达式。正则表达式是
\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
它像我预期的那样接受有效的电子邮件 ID。但是当我的 QA 进行像 ak@gmail.com.com.com.com 这样的负面输入测试时,它允许并说电子邮件 ID 是有效的。我到处搜索,几乎在各个方面都尝试过解决这个问题。任何人都可以帮我限制像上面这样的邮件ID。实际上,像ak@gmail.co.in 这样的电子邮件ID 可以被接受,但是当. 之后的最后一个字符串重复时,问题就来了。请帮忙。我正在使用 dot net 2005。
【问题讨论】:
-
ak@gmail.com.com.com.com 是格式正确的电子邮件地址。如果要进行适当的检查,则需要从地址中提取主机(在本例中为 gmail.com.com.com.com)并为其请求 DNS MX 记录。如果不存在,则地址无效。
-
不,@AleksG 我试图在 url 中输入 gmail.com.com.com.com 并显示 Oops! Google Chrome 无法为我找到 gmail.com.com.com.com。
-
@SaiKalyanAkshinthala 这是因为该域未注册,但从语法上讲,这是一个有效域。通过在浏览器中使用
gmail.com.com.com.com.com,您确实检查了它没有 DNS A 记录。这不会使@AlexsG 指出地址格式正确的观点无效。
标签: asp.net regex validation email