Heim > Backend-Entwicklung > C++ > Ist eine E -Mail -Validierung der regulären Ausdrucks zuverlässig oder sollten wir einen anderen Ansatz verwenden?

Ist eine E -Mail -Validierung der regulären Ausdrucks zuverlässig oder sollten wir einen anderen Ansatz verwenden?

Linda Hamilton
Freigeben: 2025-01-24 09:16:13
Original
439 Leute haben es durchsucht

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

E-Mail-Validierung mit regulären Ausdrücken und ihre Fallstricke

Trotz der weit verbreiteten Verwendung regulärer Ausdrücke zur Validierung von E-Mail-Adressen gibt ein allgemeiner Ausdruck wie der bereitgestellte Anlass zu Bedenken hinsichtlich seiner Wirksamkeit. Der betreffende reguläre Ausdruck zielt darauf ab, Folgendes zu erfassen:

  • Domäne der ersten Ebene (Buchstaben, Zahlen, Punkte, Bindestriche)
  • Domäne der zweiten Ebene (Buchstaben, Bindestriche)
  • Andere Level-Domains (Punkte, 2-3 Buchstaben)

Es gibt jedoch inhärente Einschränkungen dieses Ansatzes:

1. Nicht übereinstimmende TLDs:

Lange TLDs wie .museum werden von der Regex nicht abgeglichen. Darüber hinaus können E-Mail-Adressen mit bestimmten weniger verbreiteten TLDs nicht validiert werden.

2. Mangelnde Robustheit:

Der reguläre Ausdruck behandelt Randfälle möglicherweise nicht effektiv. Beispielsweise können E-Mail-Adressen, die Leerzeichen oder fehlende TLDs enthalten, die Validierung passieren.

Ein alternativer Ansatz

Anstatt sich auf reguläre Ausdrücke zu verlassen, sollten Sie die Verwendung von System.Net in Betracht ziehen. Mail.MailAddress-Klasse zur Validierung von E-Mail-Adressen. Microsoft empfiehlt diesen Ansatz aufgrund seiner höheren Genauigkeit:

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

        return true;
    }
    catch (FormatException)
    {
        return false;
    }
}
Nach dem Login kopieren

Diese Methode umgeht die Notwendigkeit komplexer Regex-Muster, reduziert potenzielle Fehler und erhöht die Zuverlässigkeit der E-Mail-Validierung.

Das obige ist der detaillierte Inhalt vonIst eine E -Mail -Validierung der regulären Ausdrucks zuverlässig oder sollten wir einen anderen Ansatz verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage