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

Collection et Stream Java Discussion :

[Expression Regulière] Inhiber la date


Sujet :

Collection et Stream Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2004
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 57
    Par défaut [Expression Regulière] Inhiber la date
    Bonjour,

    Je cherche à vérifier l'exactitude d'une chaîne de caractère sans prendre en compte des données non-déterministes comme la date, l'heure...

    Hormis la date, la chaine doit être identique !

    Exemple 1:

    chaine à vérifier: "commande pour antoine, réàlisée le 24-08-2006 à Paris"
    chaine modèle: "commande pour antoine, réàlisée le ?????????? à Paris"


    Exemple 2:

    chaine à vérifier: "commande pour antoine, réàlisée le 24-08-2006 à Paris"
    chaine modèle: "commande pour antoine, réàlisée le ?????????? à Paris plage"

    Dans l'exemple 1, le test est OK, dans l'exemple 2, le test n'est pas validé.

    Comment puis-je faire celà ? Je pensais aux expressions régulières, mais le problème de l'exemple 2 n'est pas détecté ...

  2. #2
    Expert confirmé
    Avatar de le y@m's
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    2 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 636
    Par défaut
    Citation Envoyé par webspeak
    Je pensais aux expressions régulières, mais le problème de l'exemple 2 n'est pas détecté ...
    Qu'entends-tu par "n'est pas détecté" ? quelle expression régulière as-tu utilisé ? il est où ton code ? soit plus précis.

    A priori je dirai qu'en utilisant les expressions régulières, tu prends ton texte modèle et tu remplace ce qui change par ".*"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    String model = Pattern.quote("commande pour antoine, réàlisée le ") +
                   ".*" + Pattern.quote(" à Paris");
    String text = "commande pour antoine, réàlisée le 24-08-2006 à Paris";
    if(text.matches(model)) {
        System.out.println("ok");
    } else {
        System.out.println("ko");
    }
    Je ne répondrai à aucune question technique par MP.

    Pensez aux Tutoriels et aux FAQs avant de poster ;) (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
    Enfin, quand une solution a été trouvée à votre problème
    pensez au tag :resolu:

    Cours Dvp : http://ydisanto.developpez.com
    Blog : http://yann-disanto.blogspot.com/
    Page perso : http://yann-disanto.fr

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    352
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 352
    Par défaut
    Citation Envoyé par webspeak
    Comment puis-je faire celà ? Je pensais aux expressions régulières, mais le problème de l'exemple 2 n'est pas détecté ...
    Il faut lui spécifier le fin de chaine dans l'expression régulière ($)

    Le pattern pourrait être de ce genre là
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    commande pour antoine, réàlisée le [\d-]* à Paris$
    Pour info, il existe un produit très sympa pour la mise au point des expressions régulières (format Perl): http://weitz.de/regex-coach/, mais il doit bien en exister d'autres

    Jacques Desmazières

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2004
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 57
    Par défaut
    bonjour,

    Je vous remercie pour votre aide, effectivement, il me fallait un caractère de fin de ligne ;-)

    Encore merci à vous :-)

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

Discussions similaires

  1. Expression regulière date
    Par mcvan dans le forum C#
    Réponses: 1
    Dernier message: 29/04/2013, 14h40
  2. Réponses: 3
    Dernier message: 24/03/2012, 10h54
  3. Réponses: 3
    Dernier message: 12/12/2007, 15h35
  4. Expression regulière sur les dates
    Par Konrad Florczak dans le forum Langage
    Réponses: 23
    Dernier message: 05/10/2006, 17h49
  5. Variables et Expression Regulière
    Par Temari dans le forum Langage
    Réponses: 5
    Dernier message: 05/08/2005, 01h55

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