如何重复删除电子邮件地址

时间:2011-05-16 15:43:01

标签: c# email email-validation

有没有办法可靠地从用户输入一个唯一的电子邮件地址?问题是像GMail这样的服务允许你在地址中加上一段时间而它被剥离了,而对于其他服务则不是这样。

的GMail:

chad.moran@gmail.com
c..hadmoran@gmail.com
c.h.a.d.m.o.r.a.n@gmail.com

所有这些都是相同的

其他服务:

chad.moran@---.com
c..hadmoran@---.com

这些是独一无二的。

除了专门针对GMail的特殊逻辑之外还有更好的方法吗?

2 个答案:

答案 0 :(得分:5)

每个电子邮件服务器都会有关于什么是,哪些不允许的不同规则。您指定您不希望每个客户端都有特定的逻辑,因此您必须具有特定的逻辑。

您可以删除所有点,但其他客户端可能会将点分的电子邮件地址视为不同。

我强烈建议不要尝试这样做,因为这将是一个维护噩梦,特别是当一夜电子邮件服务改变他们的政策时。此外,这样一个系统的好处很小,用户只会被激励注册一个新的电子邮件地址,这比点击实际的电子邮件地址要困难得多。

答案 1 :(得分:5)

这是不可能的,因为每个单独的电子邮件服务可能会选择以自己的方式解释电子邮件地址的“本地部分”(@之前的部分)。 chad.moran@gmail.comchadmoran@gmail.com可能会路由到同一个邮箱,但不同的提供商可能会将它们路由到不同的邮箱。

来自wikipedia

  

解释电子邮件地址的本地部分取决于邮件服务器中实现的约定和策略。例如,区分大小写可以区分仅在本地部分字符大小写方面不同的邮箱,尽管这种情况并不常见。