gpt4 book ai didi

java - 如何测试两个电子邮件地址是否相等

转载 作者:搜寻专家 更新时间:2023-11-01 03:56:45 26 4
gpt4 key购买 nike

是否有全面的方法来测试两个电子邮件地址是否相等?我知道我可以普遍降低两者。但是还有一些其他规则因服务器而异。例如,“william.burroughs@gmail.com”、“will.iam.burroughs@gmail.com”和“williamburroughs@gmail.com”都等同于 gmail。但我认为并非在所有情况下都是如此。所以给定两个电子邮件地址,我需要确保它们是等价的。目前我的代码不认为“william.burroughs@gmail.com”和“williamburroughs@gmail.com”是相同的。我可以开始使用像“gmail”这样的特殊外壳,但我希望有更好的方法。

最佳答案

Gmail 实际上只有两条自定义规则

  1. 任何句点 ( . ) 都将被忽略。使用 gmail 地址的正则表达式可以轻松解决这个问题。
  2. + 之后的任何内容都将被忽略。再次。正则表达式将为 gmail 地址修复此问题。

在我看来,最大的挑战是 Google 拥有数以千计的基于云的域,这些域不以 googlemail.comgmail.com 结尾。识别这些的唯一方法是进行 DNS 查找并查看域指向的 MX 记录。这是一个有效的 Python 示例:

http://eran.sandler.co.il/2011/07/17/determine-if-an-email-address-is-gmail-or-hosted-gmail-google-apps-for-your-domain/

你可以用任何其他语言做同样的事情。查看 gmail 或 googlemail 的“MX”记录。

对于任何非谷歌域,您可以进行小写字符串比较。

关于java - 如何测试两个电子邮件地址是否相等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20639933/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com