Heim >Java >javaLernprogramm >Wie kann Java Regex E-Mail-Adressen effektiv validieren?
E-Mail-Validierung mit Java Regex
Die Validierung von E-Mail-Adressen mithilfe regulärer Ausdrücke ist ein weniger empfohlener Ansatz, aber um mit dieser Methode fortzufahren, ist sie wichtig um die möglichen Probleme zu verstehen.
Lassen Sie uns zunächst die bereitgestellten Informationen untersuchen Regex:
b[A-Z0-9._%-] @[A-Z0-9.-] .[A-Z]{2,4}b
In Java ist die Der folgende Code wurde verwendet:
Pattern p = Pattern.compile("\b[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b"); Matcher m = p.matcher("[email protected]");
Der reguläre Ausdruck konnte jedoch nicht mit einer gültigen E-Mail-Adresse übereinstimmen. Betrachten wir den Code und den regulären Ausdruck, um mögliche Ursachen für den Fehler zu identifizieren.
Die Funktion „Suchen und Ersetzen“ in Eclipse, die denselben regulären Ausdruck verwendet, verhielt sich anders, da sie möglicherweise nicht denselben Mustervergleichsalgorithmus verwendet oder behandelt hat die Eingabezeichenfolge anders.
Um dieses Problem zu beheben, können Sie die Verwendung einer verfeinerten E-Mail-Validierungs-Regex in Betracht ziehen:
public static final Pattern VALID_EMAIL_ADDRESS_REGEX = Pattern.compile("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,6}$", Pattern.CASE_INSENSITIVE); public static boolean validate(String emailStr) { Matcher matcher = VALID_EMAIL_ADDRESS_REGEX.matcher(emailStr); return matcher.matches(); }
Diese aktualisierte Regex folgt a strengeres Format, um sicherzustellen, dass gültige E-Mail-Adressen übereinstimmen. Es verwendet außerdem ein Muster, bei dem die Groß-/Kleinschreibung nicht beachtet wird, um Variationen in der E-Mail-Schreibweise zu ermöglichen.
Das obige ist der detaillierte Inhalt vonWie kann Java Regex E-Mail-Adressen effektiv validieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!