Controle saissie d'une adresse email

cs_domxaline Messages postés 327 Date d'inscription jeudi 21 août 2008 Statut Membre Dernière intervention 10 mai 2012 - 22 sept. 2009 à 17:14
cs_domxaline Messages postés 327 Date d'inscription jeudi 21 août 2008 Statut Membre Dernière intervention 10 mai 2012 - 25 sept. 2009 à 09:41
Bonjour,
dans le java, je dois faire un prg de controle saisi email
ce prg doit être fait avec tableau et utilie Scanner

L'adresse e-mail doit avoir un caractère @ et un seul.
Ce caractère (@) doit être précédé d'au moins 3 caractères qui ne sont que des lettres de l'alphabet (pas de chiffre).
L'adresse e-mail doit avoir un caractère . et un seul.
Ce caractère (.) doit être suivi d'au moins 2 caractères qui ne sont que des lettres de l'alphabet (pas de chiffre).
Ce caractère (.) doit être précédé d'au moins 3 caractères qui ne sont que des lettres de l'alphabet (pas de chiffre).
Ce caractère (.) doit être placé avant le caractère @

s'il vous plaît, quelqu'un peut m'aider
j'ai ecrit le code comme ça
public class Toi
{
 public static void main(String[] args)
 {
   System.out.println("Entrez votre adresse email:");
   Scanner sc=new Scanner(System.in);
   String email=sc.nextLine();
   String[] tab={email};
   for(int i=0;i<tab.length;i++)
   {
   }

après je ne sais pas comment continuer!!

aidez moi s'il vous plaît

3 réponses

cs_domxaline Messages postés 327 Date d'inscription jeudi 21 août 2008 Statut Membre Dernière intervention 10 mai 2012 2
24 sept. 2009 à 10:14
bonjour
import java.util.regex.*; 
...
String masque = "^[a-zA-Z]+[a-zA-Z0-9\\._-]*[a-zA-Z0-9]@[a-zA-Z]+"
                        + "[a-zA-Z0-9\\._-]*[a-zA-Z0-9]+\\.[a-zA-Z]{2,4}$";
Pattern pattern = Pattern.compile(masque);
Matcher controler = pattern.matcher(laSaisieDeLutilisateur);
if (controler.matches()){
//Ok : la saisie est bonne
 
}else{
//La c'est pas bon
}

quelqu'un peut m'expliquer cette ligne s'il vous plaît

"^[a-zA-Z]+[a-zA-Z0-9\\._-]*[a-zA-Z0-9]@[a-zA-Z]+"
                        + "[a-zA-Z0-9\\._-]*[a-zA-Z0-9]+\\.[a-zA-Z]{2,4}$";
0
cs_domxaline Messages postés 327 Date d'inscription jeudi 21 août 2008 Statut Membre Dernière intervention 10 mai 2012 2
24 sept. 2009 à 23:02
bonjour
j'ai ecrit ce prg et j'ai un problem sur ce prg

package Mypackage;
import java.util.Scanner;
import java.util.Arrays;
public class Exercice1 
{
 public static void main (String [] args)  
 {
   String strg;
   for (int i = 0; i < 4; i++) 
   {
    System.out.println("entré  votremail:");		
    Scanner sc = new Scanner(System.in);
strg = sc.nextLine();
System.out.println("text entré :" + strg);
Exercice1 test3 = new Exercice1();
test3.controlMail(strg);
}
}
boolean controlMail (String mail)
{
boolean pass =true;

//if (mail.matches("\\w{3,}@\\S+"))
if(mail.matches("?:\w|[\-_])+(?:\.(?:\w|[\-_])+)*\@(?:\w|[\-_])+(?:\.(?:\w|[\-_])+")*)
{
System.out.println("mail correct  bienvenue");
int first =mail.indexOf("@");
int second = mail.indexOf("@", first+1);
if (second !=-1)
{
System.out.println("il y a plus de 1 @");
}		
}
else
{
System.out.println("email non valide");
}
return pass;

     } 
}


if(mail.matches("?:\w|[\-_])+(?:\.(?:\w|[\-_])+)*\@(?:\w|[\-_])+(?:\.(?:\w|[\-_])+")*)


"?:\w
jusqu'a ça est souligné,en mettant le souris sur la ligne il m'indique:invalide escape sequence (valid onces are \b \t \n \f \r " \' \\ )

et pouvez vous m'expliquer cette ligne s'il vous plaît
("?:\w|[\-_])+(?:\.(?:\w|[\-_])+)*\@(?:\w|[\-_])+(?:\.(?:\w|[\-_])+")*)
0
cs_domxaline Messages postés 327 Date d'inscription jeudi 21 août 2008 Statut Membre Dernière intervention 10 mai 2012 2
25 sept. 2009 à 09:41
bonjour
ok j'ai trouvé mon erreur
maintenant s'il vous plaît expliquez moi
cette ligne
0
Rejoignez-nous