Maison > développement back-end > C++ > La validation par e-mail de l'expression régulière est-elle fiable ou devrions-nous utiliser une approche différente?

La validation par e-mail de l'expression régulière est-elle fiable ou devrions-nous utiliser une approche différente?

Linda Hamilton
Libérer: 2025-01-24 09:16:13
original
439 Les gens l'ont consulté

Is Regular Expression Email Validation Reliable, or Should We Use a Different Approach?

Validation des e-mails par expressions régulières et ses pièges

Malgré l'utilisation généralisée des expressions régulières pour valider les adresses e-mail, une expression courante comme celle fournie soulève des inquiétudes quant à son efficacité. L'expression régulière en question vise à capturer :

  • Domaine de premier niveau (lettres, chiffres, points, traits d'union)
  • Domaine de deuxième niveau (lettres, traits d'union)
  • Autres domaines de niveau (points, 2-3 lettres)

Cependant, il existe des limites inhérentes à cela approche :

1. TLD sans correspondance :

Les TLD longs, tels que .museum, ne correspondent pas à l'expression régulière. De plus, il ne parvient pas à valider les adresses e-mail avec certains TLD moins courants.

2. Manque de robustesse :

L'expression régulière peut ne pas gérer efficacement les cas extrêmes. Par exemple, les adresses e-mail contenant des espaces ou des TLD manquants peuvent échapper à la validation.

Une approche alternative

Au lieu de vous fier aux expressions régulières, envisagez d'utiliser System.Net. Classe Mail.MailAddress pour valider les adresses e-mail. Microsoft recommande cette approche en raison de sa plus grande précision :

public bool IsValid(string emailaddress)
{
    try
    {
        MailAddress m = new MailAddress(emailaddress);

        return true;
    }
    catch (FormatException)
    {
        return false;
    }
}
Copier après la connexion

Cette méthode évite le besoin de modèles d'expressions régulières complexes, réduisant ainsi les erreurs potentielles et améliorant la fiabilité de la validation des e-mails.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal