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

VB.NET Discussion :

Ptit Question : tester si un caractère existe dans une liste [Débutant]


Sujet :

VB.NET

  1. #1
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2012
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2012
    Messages : 175
    Points : 151
    Points
    151
    Par défaut Ptit Question : tester si un caractère existe dans une liste
    Bonjour

    Comment tester si 1 caractère est parmi la liste

    j'utilise le code suivant mais ca ne marche pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
                If caractere in ["F","L","R","A"]) Then
                   ....................
                End If

    merci

  2. #2
    Membre chevronné
    Avatar de Sehnsucht
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2008
    Messages
    847
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Octobre 2008
    Messages : 847
    Points : 2 209
    Points
    2 209
    Par défaut
    Bonjour,

    Mets tes caractères dans un conteneur et utilise Contains Ou IndexOf (par exemple).
    Comme il s'agit de caractères, tu peux aussi utiliser un String (qui reste un conteneur comme un autre).

    Cordialement !

  3. #3
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Février 2003
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 2 180
    Points : 4 496
    Points
    4 496
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    List<Of Char> lstChar = New List<Of Char>()
    lstChar.Add('A')
    lstChar.Add('B')
    lstChar.Add('C')
    If lstChar.Exists('B') Then
     
    End If

  4. #4
    Membre habitué
    Homme Profil pro
    Inscrit en
    Mars 2008
    Messages
    161
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2008
    Messages : 161
    Points : 166
    Points
    166
    Par défaut
    Salut,

    Je ne sais pas si c'est ce que tu veux mais tu peux essayer ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
            Dim mavar, MaList As String
            Dim monbooleen As Boolean
     
            MaList = "F,L,R,A"
            mavar = "A"
     
            If MaList.Contains(mavar) Then
                monbooleen = True
            Else
                monbooleen = False
            End If

  5. #5
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2012
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2012
    Messages : 175
    Points : 151
    Points
    151
    Par défaut
    Merci pour les réponses :

    j'ai testé la proposition de Sehnsucht :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If Caractere.Contains("FLRA") Then
    ca n'a pas marché

    et j'ai testé la proposition de BenoitM

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
                        Dim lstChar = New List(Of Char)()
                        lstChar.Add("AFLR")
                        If lstChar.Contains(Caractere) Then
                         ......
                        end if
    et aussi ca n'a pas marché

    et surement erreur de ma part

    et j'ai testé la propostion de peregna2007

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
                    Dim MaList As String = "F,L,R,A"
                    If MaList.Contains(Caractere) Then
    et ca bien marché

    Merci pour tous

  6. #6
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2012
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2012
    Messages : 175
    Points : 151
    Points
    151
    Par défaut
    oupss

    Desolé même la 3eme proposition ca donne false malgré que la lettre est dans la liste ??????????

  7. #7
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2012
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Rhône (Rhône Alpes)

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

    Informations forums :
    Inscription : Avril 2012
    Messages : 206
    Points : 455
    Points
    455
    Par défaut
    tu melange tout, ^^

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Dim test as String = "FLRA"
    If test.Contains(caractere) Then
    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Dim lstChar = New List(Of Char)()
    lstChar.Add("A")
    lstChar.Add("F")
    lstChar.Add("L")
    lstChar.Add("R")
    If lstChar.Contains(Caractere) Then
    End if

  8. #8
    Membre habitué
    Homme Profil pro
    Inscrit en
    Mars 2008
    Messages
    161
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2008
    Messages : 161
    Points : 166
    Points
    166
    Par défaut
    Je pense que la valeur contenue dans ta variable Caractere contient sans doute des espaces. Essaie d'écrire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
                    Dim MaList As String = "F,L,R,A"
                    If MaList.Contains(Trim(Caractere)) Then

  9. #9
    Membre habitué
    Homme Profil pro
    Inscrit en
    Mars 2008
    Messages
    161
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2008
    Messages : 161
    Points : 166
    Points
    166
    Par défaut
    Et puis dit nous. Quelle est la valeur contenue dans ta variable caractère ? Je veux dire qu'est ce que tu passes en paramètre ?

  10. #10
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2012
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Rhône (Rhône Alpes)

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

    Informations forums :
    Inscription : Avril 2012
    Messages : 206
    Points : 455
    Points
    455
    Par défaut
    Je pense que la valeur contenue dans ta variable Caractere contient sans doute des espaces. Essaie d'écrire
    et j'ai testé la propostion de peregna2007
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim MaList As String = "F,L,R,A"
    If MaList.Contains(Caractere) Then
    et ca bien marché

  11. #11
    Membre chevronné
    Avatar de Sehnsucht
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2008
    Messages
    847
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Lot et Garonne (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Octobre 2008
    Messages : 847
    Points : 2 209
    Points
    2 209
    Par défaut
    Tiens ça ressemble étrangement à ce que j'ai suggéré

    @BenoitM: j'aime bien ton C.Net où est-ce du VB# ?
    juste pour les futurs lecteurs je me permets de rectifier (surtout que tu as mal utilisé Exists qui attend un Predicate(Of T) contrairement à Contains par exemple)
    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
    16
    17
    'autre possibilité
    'Dim lstChar As New List(Of Char) From { "A"c, "B"c, "C"c }
    Dim lstChar As New List(Of Char)
    lstChar.Add("A"c)
    lstChar.Add("B"c)
    lstChar.Add("C"c)
     
    'version avec Exists
    If lstChar.Exists(Function(ch) ch = "B"c) Then
    End If
    'alternative possible pour ce cas
    If lstChar.Exists(AddressOf "B"c.Equals) Then
    End If
     
    'version avec Contains
    If lstChar.Contains("B"c) Then
    End If
    Cordialement !

  12. #12
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2012
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2012
    Messages : 175
    Points : 151
    Points
    151
    Par défaut
    Merci les amis...

    ca passe avec le code


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim test as String = "FLRA"
    If test.Contains(caractere) Then

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

Discussions similaires

  1. tester si un mot existe dans une phrase
    Par rimenis dans le forum Langage
    Réponses: 7
    Dernier message: 15/04/2013, 11h23
  2. Caractères spéciaux dans une liste
    Par paul fa dans le forum Langage
    Réponses: 3
    Dernier message: 17/07/2009, 12h19
  3. Réponses: 23
    Dernier message: 11/11/2007, 20h01
  4. affichage caractères chinois dans une liste
    Par turpinx dans le forum Langage
    Réponses: 1
    Dernier message: 09/09/2006, 19h13
  5. Tester qu'une valeur existe dans une "liste"
    Par Oluha dans le forum Langage
    Réponses: 12
    Dernier message: 04/08/2005, 23h01

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