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

Langage Java Discussion :

Controle sur format de données


Sujet :

Langage Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    188
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 188
    Points : 81
    Points
    81
    Par défaut Controle sur format de données
    Bonjour,
    Je récupère, dans mon programme java, une variable numAcces de type String, et je souhaiterais controler que cette variable est une valeur numérique sur 10 chiffres, commencant par 01,02,03,04 ou 05.
    Je ne sais pas vraiment comment faire ceci. Pouvez vous m'aider?
    Merci bcp d'avance

  2. #2
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut
    Tu peux utiliser des expressions régulières par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ^(01|02|03|04|05|06|08)[0-9]{8}

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    188
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 188
    Points : 81
    Points
    81
    Par défaut
    Mais comment peux tu considérer cette expression régulière? Comment l'insères tu dans ton code java?
    Merci d'avance

  4. #4
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,


    sironimo >> Tu te compliques un peu la vie, ceci est amplement suffisant :

    clairette >> Tu peux utiliser les classes Pattern/Matcher ou directement la méthode matches() de String :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    	String regex = "0[0-5][0-9]{8}";
     
    	String s1 = "0123456789";
    	String s2 = "9876543210";
     
    	System.out.println( s1.matches(regex) );	// true
    	System.out.println( s2.matches(regex) );	// false
    Plus d'info dans la javadoc de Pattern...

    a++

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    188
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 188
    Points : 81
    Points
    81
    Par défaut
    Je vais essayer ca. Merci bcp pour votre aide!

  6. #6
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut
    Citation Envoyé par adiGuba
    Tu te compliques un peu la vie, ceci est amplement suffisant :
    Je sais mais je voulais aussi lui proposer de gérer les nuémros de téléphone portable ainsi que les numéros de type box ou payant commençant par 08 d'où mon expression un peu plus complexe

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    188
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 188
    Points : 81
    Points
    81
    Par défaut
    Savez vous si la méthode matches est compatible avec le jdk 1.3.1_08-b03?
    Car chez moi ca ne fonctionne pas...:-(
    Merci d'avance

  8. #8
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut
    matches
    public boolean matches(String regex)
    Since:
    1.4
    See Also:
    Pattern
    Donc normal que tu ne puisses l'utiliser.

    Citation Envoyé par adiGuba
    Tu peux utiliser les classes Pattern/Matcher, Plus d'info dans la javadoc de Pattern...

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    188
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 188
    Points : 81
    Points
    81
    Par défaut
    J'ai pas de chance, la classe Pattern n'existe également que depuis le 1.4....
    Si jamais quelqu'un connais une fonction qui fait la meme chose que matches mais en 1.3, ca m'arrangerais beaucoup.
    Merci bcp en tt cas pour votre aide!

  10. #10
    Membre éclairé
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Points : 756
    Points
    756
    Par défaut
    Tu ne peux pas non plus utiliser les JFormattedtextField puisque eux aussi ne sont présents que depuis la version 1.4.

    Il doit quand même y avoir moyen de faire ça autrement que manuellement mais je le connais pas

  11. #11
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par clairette
    J'ai pas de chance, la classe Pattern n'existe également que depuis le 1.4....
    Normal la méthode matches() utilises Pattern...

    Citation Envoyé par clairette
    Si jamais quelqu'un connais une fonction qui fait la meme chose que matches mais en 1.3, ca m'arrangerais beaucoup.
    Il y a bien Jakarta Regexp. Mais si tu va utiliser les expressions régulières seulement pour vérifier les numéro de téléphone, il serait peut être préférable de coder une fonction de vérification rapide...

    a++

    PS : Au passage n'oubliez pas que vous pouvez votre version de Java via un tag dans le titre (ex: [1.3]Controle sur format de données)

  12. #12
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2002
    Messages : 21
    Points : 11
    Points
    11
    Par défaut
    Pour le JDK 1.3, je crois qu'il y a un "add-on" pour lui rajouter les regexp (un peu comme avec swing pour la version 1.1.

    Par contre je ne sais pas où la trouver mais à mon google pourrait aider.

    hlionelh

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. vérifier le format de données d'un controle
    Par amne26 dans le forum IHM
    Réponses: 1
    Dernier message: 01/10/2008, 00h26
  2. Un peu de philo sur le controle du model de données
    Par Alec6 dans le forum Architecture
    Réponses: 4
    Dernier message: 25/03/2008, 17h27
  3. [Sunopsis V3] - Controle format de données
    Par HarryCoco dans le forum ODI (ex-Sunopsis)
    Réponses: 3
    Dernier message: 10/09/2007, 14h09
  4. TEXTBOX : controle sur deux formats possible
    Par Ercohuma59 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 29/08/2007, 17h10
  5. [C#]Controle sur un format de chaine de caractere
    Par drzoidberg dans le forum Windows Forms
    Réponses: 4
    Dernier message: 15/09/2006, 12h47

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