J'essaie de trouver une méthode simple pour vérifier si l'entrée d'un utilisateur répond à quelques critères pour une adresse e-mail. J'ai lu beaucoup de discussions sur ce sujet et la plupart semblent vouloir valider l'adresse e-mail aussi. Je n'essaie pas de construire un validateur/vérificateur d'adresse e-mail super duper. J'essaye de construire une méthode qui vérifie ces choses:Non-Confusing Simple Validation de l'email en Java String
- La chaîne saisie par l'utilisateur contient le signe '@'.
- Il y a au moins deux caractères avant le signe '@'.
- Il y a un '.' après le signe at suivi de seulement trois caractères. Le nom de domaine peut être aussi long que nécessaire, mais la chaîne doit se terminer par "._ _ _". Comme dans ".com" ou ".net" ...
Je comprends que ce n'est pas un vérificateur d'adresse e-mail tout compris. Ce n'est pas ce que je veux bien. Je veux juste quelque chose de si simple. Je sais que c'est probablement une question de routine, mais je n'arrive pas à comprendre, même après avoir lu toutes les façons sérieusement dingues de valider une adresse e-mail.
C'est le code que j'ai jusqu'à présent: (Ne vous inquiétez pas, je sais déjà c'est assez pathétique ....)
public static void checkEmail()
{
validEmail(emailAddresses);
if(validEmail(emailAddresses))
{
}
}
public static boolean validEmail(String email) {
return email.matches("[A-Z0-9._%+-][A-Z0-9._%+-][email protected][A-Z0-9.-]+\\.[A-Z]{3}");
}
Il est difficile de dire ce qui est simple dans ce cas. Vous avez posté quelques cas (contient @, contient un autre caractère avant/après). Je lisais la spécification et faisais une expression régulière complète pour la valider. – khachik
Juste une note pour la terminologie: Vous ne voulez pas vérifier un e-mail, vous voulez vérifier une * adresse e-mail *. Ce n'est pas pareil. –
Une autre remarque: Il ya des domaines de premier niveau avec plus ('museum',' aero') et avec moins de deux ('de',' us' etc. - tous les domaines de premier niveau de code de pays, en fait) lettres. (Et la plupart de mes adresses e-mail se terminent par '.de'.) –