Maison > Java > javaDidacticiel > Pourquoi la validation de mon courrier électronique Java Regex échoue-t-elle malgré le travail dans la recherche et le remplacement d'Eclipse ?

Pourquoi la validation de mon courrier électronique Java Regex échoue-t-elle malgré le travail dans la recherche et le remplacement d'Eclipse ?

Barbara Streisand
Libérer: 2024-11-30 17:30:11
original
681 Les gens l'ont consulté

Why Does My Java Regex Email Validation Fail Despite Working in Eclipse's Find and Replace?

Problème avec la validation des e-mails Java Regex

En tentant de valider les adresses e-mail à l'aide d'une expression régulière, un utilisateur Java a rencontré un problème où le la validation échoue même pour les adresses e-mail bien formées. Malgré le fait que l'expression régulière correspond aux adresses e-mail lorsqu'elle est utilisée dans une fonction « rechercher et remplacer » dans Eclipse, elle échoue lorsqu'elle est utilisée avec les classes Pattern et Matcher de Java.

L'expression régulière en question est :

\b[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b
Copier après la connexion

L'utilisateur a utilisé ce code en Java :

Pattern p = Pattern.compile("\b[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b");
Matcher m = p.matcher("[email protected]");

if (m.find())
    System.out.println("Correct!");
Copier après la connexion

Cependant, quelle que soit l'adresse e-mail valide ou invalide, le La validation de l'expression régulière échoue.

Une solution potentielle

Une solution suggérée consiste à utiliser le code Java suivant, qui utilise une expression régulière similaire :

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();
}
Copier après la connexion

Ce code a été signalé pour valider les adresses e-mail de manière fiable.

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!

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