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 :

String inclue dans une autre


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Octobre 2004
    Messages : 201
    Par défaut String inclue dans une autre
    Bonjour,

    Il me semble que j'ai constament ce prob et j'arrive pas a conprendre.
    Je veux tout somplement tester si une chaine est inclue dans une autre
    Voila ce que j'ai fait et j'ai "false" a chaque fois:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    String event = "Server B went offline";
    System.out.println(event.matches("B"));
    System.out.println(event.matches("offline"));

  2. #2
    Membre éprouvé
    Avatar de Deadpool
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 312
    Par défaut
    Citation Envoyé par metalcoyote Voir le message
    Bonjour,

    Il me semble que j'ai constament ce prob et j'arrive pas a conprendre.
    Je veux tout somplement tester si une chaine est inclue dans une autre
    Voila ce que j'ai fait et j'ai "false" a chaque fois:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    String event = "Server B went offline";
    System.out.println(event.matches("B"));
    System.out.println(event.matches("offline"));
    Salut

    C'est tout simplement dû au fait que la méthode matches de la classe String utilise les expressions régulières.

    Je t'invite à consulter ce tutoriel pour en apprendre un peu plus.

    Sinon pour que ça marche dans ton cas, il faut faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    String event = "Server B went offline";
    System.out.println(event.matches(".*B.*"));
    System.out.println(event.matches(".*offline.*"));

  3. #3
    Expert éminent
    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
    Billets dans le blog
    1
    Par défaut
    Salut,



    contains() serait un peu plus approprié sur ce coup...

    Sinon un p'tit tour dans la javadoc s'impose !


    a++

  4. #4
    Membre éprouvé
    Avatar de Deadpool
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 312
    Par défaut
    Citation Envoyé par adiGuba Voir le message
    Salut,



    contains() serait un peu plus approprié sur ce coup...

    Sinon un p'tit tour dans la javadoc s'impose !


    a++
    C'est vrai que matches ne correspond pas vraiment à contains.

    La méthode matches sert à déterminer si une chaîne correspond à un certain "schéma".

    Par exemple avec le code que je t'ai donné :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    String event = "Server B went offline";
    System.out.println(event.matches(".*B.*"));
    //teste si la chaîne event correspond au schéma [une suite quelconque de caractères, la lettre B, une suite quelconque de caractères]
     
    System.out.println(event.matches(".*offline.*"));
    //teste si la chaîne event correspond au schéma [une suite quelconque de caractères, la chaine offline, une suite quelconque de caractères]
    Donc, pour ton cas et comme l'a dit très justement adiGuba, il faudrait mieux utiliser contains.

    A noter simplement que la méthode contains n'existe qu'à partir de Java 5.

    Si tu utilise une version de Java antérieure tu peux utiliser la petite méthode suivante à la place :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public static boolean contains (String aString, String sequenceToSearch)
    {
           return aString.indexOf(sequenceToSearch)!=-1;
     
    }

  5. #5
    Membre confirmé
    Profil pro
    Développeur Java
    Inscrit en
    Octobre 2004
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Octobre 2004
    Messages : 201
    Par défaut
    Merci beaucoup !
    C'est le contains que je cherchais !
    Quand on expressions regulieres, j'avoue je suis un peu rouille.

    Merci

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

Discussions similaires

  1. Copie d'une chaîne dans une autre String CopyTo
    Par joey_5 dans le forum Contribuez
    Réponses: 4
    Dernier message: 28/03/2012, 17h32
  2. Recopie d'un extrait de string dans une autre
    Par lcoulon dans le forum C
    Réponses: 5
    Dernier message: 26/07/2010, 17h11
  3. Position d'une String dans une autre String
    Par avogadro dans le forum Windows Forms
    Réponses: 6
    Dernier message: 10/09/2007, 00h19
  4. Réponses: 12
    Dernier message: 11/11/2005, 14h25
  5. [String]Recherche d'une chaine de caractères dans une autre
    Par Crazyblinkgirl dans le forum Langage
    Réponses: 3
    Dernier message: 29/07/2004, 11h51

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