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 :

Méthode de validation de caractères


Sujet :

avec Java

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2020
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2020
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Méthode de validation de caractères
    Bonjour,
    Je suis étudiante en programmation Java, j'ai besoin d'aide pour mon Tp demandé par notre prof.
    Je dois faire une methode que j'appellerai après dans ma méthode main qui valide 7 caractères.
    C'est à dire que ca doit validé un sigle exemple : Inf1120, 3 lettres(majuscule ou manisculles) et 4 chiffres. Je ne sais pas comment faire ce code... Je n'y arrive pas.
    Quelqu'un pourrait m' aider pour le code a faire ?
    Je vous remercie

  2. #2
    Membre confirmé Avatar de Kazh Du
    Homme Profil pro
    Développeur Java
    Inscrit en
    Novembre 2011
    Messages
    152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2011
    Messages : 152
    Points : 561
    Points
    561
    Par défaut


    Il faut que tu utilises des regex (expression régulières) et donc la classe java.util.regex.Pattern. Tu pourras facilement trouver des tutos à ce sujet sur Developpez (ou ailleurs sur le net).
    Merci d'ajouter un sur les tags qui vous ont aidé

  3. #3
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2020
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2020
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Merci beaucoup mais la prof ne nous autorise pas a utiliser les expressions réguliere...

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Analyste/ Programmeur
    Inscrit en
    Juillet 2013
    Messages
    4 631
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Analyste/ Programmeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 4 631
    Points : 10 558
    Points
    10 558
    Par défaut
    Il faut coder une machine à états ("state machine" en anglais) ou automate fini

    state_char_1 (état d'entrée) : si tu as un caractère (majuscule ou minuscule), tu vas à l'état state_char_2, sinon tu vas à l'état state_error
    state_char_2 : si tu as un caractère (majuscule ou minuscule), tu vas à l'état state_char_3, sinon tu vas à l'état state_error
    state_char_3 : si tu as un caractère (majuscule ou minuscule), tu vas à l'état state_int_1, sinon tu vas à l'état state_error
    state_int_1 : si tu as un entier, tu vas à l'état state_int_2, sinon tu vas à l'état state_error
    state_int_2 : si tu as un entier, tu vas à l'état state_int_3, sinon tu vas à l'état state_error
    state_int_3 : si tu as un entier, tu vas à l'état state_int_4, sinon tu vas à l'état state_error
    state_int_4 (état de sortie) : si tu as un entier, ta chaîne de caractères est validée, sinon tu vas à l'état state_error
    state_error (état de sortie) : ta chaîne de caractères n'est pas validée

    C'est une machine à états très [très] simple et je pense que tu peux fusionner les états state_char_X et state_int_X avec un compteur (*)

    * : tu peux fusionner parce que les états font la même chose . Mais, par exemple, si le premier caractère doit être forcément en majuscule (je sens la question 2 ), dans ce cas, la fusion est plus compliquée à mettre en place avec l'état state_char_1.

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Janvier 2020
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2020
    Messages : 14
    Points : 39
    Points
    39
    Par défaut
    Bonjour CélineCa,

    En général, quand on veut une fonction qui renvoie si l'argument est valide, la bonne façon de faire c'est d'énumérer les cas pour lesquels l'argument est invalide :

    1. La chaîne de caractères est invalide si sa taille n'est pas 7 (méthode length()). On renvoie alors false.
    2. Les trois premiers caractères doivent être des lettres. Pour chacun de ces caractères (boucle for) tu peux appeler la méthode charAt() pour récupérer un caractère dans la String, puis Character.isLetter() pour vérifier que c'est une lettre. Si un caractère n'est pas une lettre, on renvoie false.
    3. Les quatre derniers caractères doivent être des chiffres. Pareil, mais avec Character.isDigit pour vérifier qu'un caractère est un chiffre. Si un caractère n'est pas un chiffre, on renvoie false.
    4. ... ben c'est bon ! On renvoie true.
    Julien Lopez
    Ingénieur de recherche à R++ : https://rplusplus.com/

Discussions similaires

  1. méthode POST avec les caractères '&' et '+' dans une variable
    Par ayvong dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 01/07/2008, 20h38
  2. [RegEx] Validation de caractères
    Par MicaelFelix dans le forum Langage
    Réponses: 11
    Dernier message: 24/02/2008, 23h23
  3. Réponses: 5
    Dernier message: 12/02/2008, 12h01
  4. [XSD] validation de caractères spéciaux
    Par arthix dans le forum Valider
    Réponses: 4
    Dernier message: 16/09/2006, 14h18
  5. [XML] Méthode de validation d'un document xml en php
    Par samouille666 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 14/02/2006, 21h56

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