"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > 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 ?

Publié le 2024-12-22
Parcourir:830

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

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!");

Cependant, que l'adresse e-mail soit valide ou invalide, 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();
}

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

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3