Normaliseur d'e-mails

Normalisez des adresses e-mail en masse : mise en minuscules, suppression des points et des étiquettes plus de Gmail, unification des alias de fournisseurs et suppression des doublons qui ne diffèrent qu'en apparence.

Transformez une liste d'adresses en désordre en une forme canonique unique pour chacune. Collez une adresse par ligne. L'outil met chaque adresse en minuscules et, selon les options, supprime les points de Gmail, retire les étiquettes plus, unifie les alias de fournisseurs et écarte les doublons qui ne font que sembler différents.

Détails

Original Normalisé Statut

Ce que la normalisation des e-mails change réellement

Le problème

Alice.Smith+news@Gmail.com, alicesmith@googlemail.com et alicesmith@gmail.com arrivent tous dans la même boîte de réception, et pourtant un naïf SELECT ... WHERE email = ? les traite comme trois personnes différentes. C'est ainsi que l'on se retrouve avec des comptes en double, trois exemplaires de la même newsletter et un essai gratuit renouvelé onze fois par la même personne.

La normalisation ramène ces variantes à une chaîne canonique unique que vous pouvez indexer et comparer.

Les quatre règles

La casse. La partie domaine est insensible à la casse d'après la RFC 1035, et si la partie locale est techniquement sensible à la casse d'après la RFC 5321, aucun fournisseur grand public ne la traite ainsi. Tout mettre en minuscules est sans risque en pratique et c'est la seule règle que vous devriez toujours appliquer.

Les points. Gmail ignore les points dans la partie locale : a.li.ce@gmail.com équivaut à alice@gmail.com. C'est un comportement propre à Gmail. L'appliquer à Outlook, Yahoo ou un domaine d'entreprise fusionnerait des personnes réellement distinctes ; cet outil ne retire donc les points que pour gmail.com et googlemail.com.

Les étiquettes plus. Le sous-adressage (alice+shopping@gmail.com) est pris en charge par Gmail, Outlook, Fastmail, iCloud et la plupart des serveurs modernes. Yahoo utilise un tiret au lieu d'un plus. L'étiquette est un libellé destiné au filtrage, pas un élément de l'identité : elle peut donc être supprimée — mais voyez la réserve ci-dessous.

Les alias de fournisseurs. googlemail.com est le même service que gmail.com, et hotmail.com, live.com et msn.com renvoient tous à la plateforme grand public de Microsoft. Les ramener à un seul domaine canonique permet d'attraper une autre part des doublons.

Quand ne pas normaliser

Conservez l'adresse telle que l'utilisateur l'a saisie et n'utilisez la forme normalisée que comme clé de comparaison. N'envoyez jamais de courrier à la version normalisée — vous supprimeriez une étiquette plus dont le destinataire se sert pour filtrer, et certaines boîtes professionnelles légitimes contiennent réellement un +.

Soyez également prudent avec la suppression des étiquettes plus dans un contexte anti-abus. Elle bloque effectivement les essais multiples d'une même personne, mais elle pénalise aussi les utilisateurs soucieux de leur vie privée qui étiquettent chaque inscription. Traitez-la comme un signal, pas comme un verdict.

Et n'utilisez pas ceci comme une validation. Une adresse syntaxiquement parfaite peut tout de même rebondir ; seul un e-mail de confirmation prouve la délivrabilité.

Note open source : développé de zéro en JavaScript natif à partir du comportement documenté des fournisseurs. Aucune bibliothèque tierce et aucune requête réseau.

Questions fréquentes

Dois-je stocker l'adresse normalisée au lieu de l'originale ?
Non. Stockez les deux — l'originale pour envoyer le courrier, la forme normalisée comme index unique pour les recherches et la détection des doublons.
Pourquoi les points ne sont-ils supprimés que pour Gmail ?
Parce que seul Gmail les ignore. Sur Outlook, Yahoo ou un domaine d'entreprise, john.smith@ et johnsmith@ peuvent être deux employés différents, et les fusionner enverrait le courrier à la mauvaise personne.
Tous les fournisseurs prennent-ils en charge les étiquettes plus ?
La plupart des fournisseurs modernes oui, mais pas tous. Yahoo utilise un tiret, et certains serveurs anciens ou auto-hébergés rejettent purement et simplement le plus. Ne supposez jamais qu'une adresse étiquetée sera acceptée.
La normalisation est-elle une forme de validation ?
Non. Elle ne fait que réécrire la chaîne sous une forme canonique. L'existence de la boîte ne peut être établie qu'en envoyant un message de confirmation.
Mes adresses sont-elles envoyées quelque part ?
Non. Toute la liste est traitée dans votre navigateur en JavaScript simple et ne quitte jamais la page.