電子メールの宛先がデータベース内の誰かであるかどうかを検出しようとしています。問題は、同等の電子メールが存在するため、直接比較してもすべてのケースが検出されないことです。いくつかの例:foobar@gmail.com
==== 。これらのパターンが定義されている場所はありますか?foo.bar@gmail.com
foobar+123@gmail.com
2 に答える
あなたが参照しているのは「サマンティクスのサブアドレス指定」です
ほとんどの人に関する限り:いいえ、あなたが気付いていない追加のルールはありません。これは、両方の「。」が原因です。および「+/-」はドメイン固有の識別子です。
Gmailは、ドットのあるメールをドットのないメールと同じように認識します。たとえば、JohnSmith @ gmail.com == John.Smith@gmail.comは、詐欺師にとって簡単すぎるためです。したがって、すべてのGmailアドレスがドットの有無にかかわらず同じであることが保証されますが、この保証は他のすべてのドメインに適用されるわけではありません。
名前だけからこれを決定する一般的な方法があるかどうかを尋ねるつもりなら、いいえ。パターンを使用して類似の電子メールアドレスを見つけたとしても、それらが同じ人物に属していることをどのようにして知ることができますか?たぶんfoobar123は本当にfoobarとは違うのでしょうか?
これで、データベーステーブルに人にリンクされた電子メールアドレスがある場合、クエリを使用して、リンクされている人を見つけ、それらを比較できます。
私が考えることができる他の唯一のことは、電子メールアドレスのIPルックアップを実行できるかどうかですが、それには多くの問題があります。