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

Windows Forms Discussion :

[VB.NET] Recherche d'une chaine dans une autre


Sujet :

Windows Forms

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 114
    Points : 64
    Points
    64
    Par défaut [VB.NET] Recherche d'une chaine dans une autre
    Bonjour,

    c'est une question qui a sûrment déjà été posée mais je ne la trouve pas!

    Je souhaite comparer une chaine de caractère (saisie par l'utilisateur) à d'autres chaines de caractères... Et pouvoir la trouver dans une autre chaine de caractère.

    Par exemple si l'utilisateur entre "lop" et que j'ai le mot "developpez" dans la liste des chaines deja memorisées, que je puisse la trouver dans ce mot!

    je compte faire une boucle dans une boucle:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    For i = 0 To 10
                    For j = 1 To Len(tab(i))
                        //ici comparer les chaines!
                    Next
                Next
    Je pense ne pas avoir été très très clair dsl

  2. #2
    Membre régulier
    Inscrit en
    Juin 2003
    Messages
    82
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 82
    Points : 92
    Points
    92
    Par défaut
    Salut,

    Regarde du côté de la méthode substring de classe String.

    @++

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 114
    Points : 64
    Points
    64
    Par défaut
    slt!

    Bon en fait j'ai trouvé une piste:

    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
    For i = 0 To lbl_cpt_divx.Text
                    j = 0
                    While j <= Len(tab(i))
                        If String.Compare(tab(i), j, txt_search.Text, 0, Len(txt_search.Text)) = 0 Then
                            If trouve = False Then
                                lst_divx.Items.Clear()
                                trouve = True
                            End If
                            lst_divx.Items.Add(tab(i))
                            j = Len(tab(i))
                        Else
                            j = j + 1
                        End If
                    End While
                Next
    Cela marche lorsque j'initialise la variable j à 1 mais ca comparera qu'a partir de la 2eme lettre de la première chaine (tab(i)). Lorsque je mets sur 0 j'ai une erreur qui me dit:
    L'offset et la longueur doivent faire référence à une position dans la chaîne.

  4. #4
    Membre régulier
    Inscrit en
    Juin 2003
    Messages
    82
    Détails du profil
    Informations forums :
    Inscription : Juin 2003
    Messages : 82
    Points : 92
    Points
    92
    Par défaut
    Excuses moi je me suis trompé.

    En VB.NET tu peux utiliser la fonction : InStr qui recherche une occurence du sous chaine dans une chaine.

    regarde ce cours :
    http://plasserre.developpez.com/v1-6string.htm

    @+

  5. #5
    Rédacteur
    Avatar de abelman
    Inscrit en
    Février 2003
    Messages
    1 106
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 1 106
    Points : 2 629
    Points
    2 629
    Par défaut
    String.IndexOf

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    114
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 114
    Points : 64
    Points
    64
    Par défaut
    Merci, la fonction inStr() était pile poil ce que je recherchais...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     Dim trouve As Boolean = False
                For i = 0 To lbl_cpt_divx.Text
                    If InStr(tab(i), txt_search.Text) <> 0 Then
                        If trouve = False Then
                            lst_divx.Items.Clear()
                            trouve = True
                        End If
                        lst_divx.Items.Add(tab(i))
                    End If
                Next
    Ca fonctionne

    merci à vous !

  7. #7
    Rédacteur
    Avatar de abelman
    Inscrit en
    Février 2003
    Messages
    1 106
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 1 106
    Points : 2 629
    Points
    2 629
    Par défaut
    Salut

    Si je peux me permettre Instr c'est pour surtout pour la compatibilité VB6
    La fonction .NET est IndexOf de la classe String

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Dim trouve As Boolean = False
                For i = 0 To lbl_cpt_divx.Text
                    If tab(i).IndexOf(txt_search.Text) <> -1 Then
                        If trouve = False Then
                            lst_divx.Items.Clear()
                            trouve = True
                        End If
                        lst_divx.Items.Add(tab(i))
                    End If
                Next

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

Discussions similaires

  1. [Objective-C] rechercher une chaine dans une chaine
    Par celeborn56 dans le forum Objective-C
    Réponses: 3
    Dernier message: 21/02/2011, 07h47
  2. rechercher la suite d'une chaine dans une chaine
    Par ju0123456789 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 04/12/2009, 15h10
  3. recherche d'une chaine dans une chaine
    Par Katachana dans le forum Langage
    Réponses: 2
    Dernier message: 15/07/2008, 12h10
  4. recherche d'une chaine dans une chaine
    Par jpclutier dans le forum Shell et commandes GNU
    Réponses: 3
    Dernier message: 03/12/2007, 11h30
  5. Réponses: 2
    Dernier message: 19/10/2005, 15h38

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