IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

[RegExp] Petit problème avec les integers


Sujet :

avec Java

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2010
    Messages : 86
    Points : 75
    Points
    75
    Par défaut [RegExp] Petit problème avec les integers
    Bonjour,

    Je suis en train de me mettre petit à petit au JAVA et j'essaye de comprendre le fonctionnement des RegExp en Java.

    J'ai donc mon petit programme qui demande a l'utilisateur de saisir deux entiers, vérifié si c'est bien un entier qui est donner (c'est là ou la RegExp rentre en jeu) puis additionner les deux chiffres. Donc voila mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Pattern regExp = Pattern.compile("/^\\d+$/"); 
    		Scanner scanTemp = new Scanner(System.in);
    		//récupération de la saisie au format souhaité
    		System.out.println("Merci de choisir deux chiffres : ");
    		System.out.println("Premier chiffre : ");		
    		int monEntier1 = scanTemp.nextInt();
    		Matcher match = regExp.matcher(monEntier1);
    		boolean isNum = match.matches();
    		while (isNum == false)
    		{
    			System.out.println("Attention, vous n'avez pas rentrer un chiffre, veuillez ressaisir :");
     
    		}
    		System.out.println("Deuxième chiffre : ");
    		int monEntier2 = scanTemp.nextInt();
    		int totalEntier = monEntier1 + monEntier2;
    		System.out.println("La somme de vos deux chiffres est : " + totalEntier);
    Et le soucis que j'ai c'est la regExp qui ne s'applique pas a monEntier1. Ou est l'erreur ?

    Merci d'avance

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Bonsoir,

    1- Si c'est pour tester un entier, Pattern regExp = Pattern.compile("\\d*"); suffit.
    2-
    int monEntier1 = scanTemp.nextInt();
    Matcher match = regExp.matcher(monEntier1);
    La méthode matcher attend comme paramètre un objet qui implémente l'interface "CharSequence", un String par exemple.
    3-
    while (isNum == false)
    {
    System.out.println("Attention, vous n'avez pas rentrer un chiffre, veuillez ressaisir :");

    }
    C'est une boucle infinie.

    A+.

Discussions similaires

  1. Petit problème avec les pointeurs et variable
    Par mitherkiller dans le forum C
    Réponses: 5
    Dernier message: 09/03/2007, 22h05
  2. [VBA-Excel] Petit problème avec les formulaires
    Par ash_rmy dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 18/08/2006, 09h22
  3. Petit problème avec les accents circonflexes...
    Par Harvester dans le forum Autres Logiciels
    Réponses: 8
    Dernier message: 29/11/2005, 18h44
  4. Réponses: 20
    Dernier message: 17/08/2005, 18h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo