Comment compter le nombre d'élément dans un tableau commençant par une chaine sp [Résolu]

Messages postés
262
Date d'inscription
mardi 26 février 2002
Dernière intervention
27 février 2012
- - Dernière réponse : NHenry
Messages postés
14319
Date d'inscription
vendredi 14 mars 2003
Dernière intervention
11 décembre 2018
- 21 avril 2011 à 22:59
Bonjour,

Comment compter le nombre d'élément dans un tableau commençant par une chaine spécifique ?

PS : si possible sans faire de boucle.

Du genre :


Private Function Montableau()
        Dim MaListe As New List(Of String)({"toto.jpg_aller", "toto.jpg_alli", "toto.jpg_allo", "toto.jpg_allu", "toti.jpg_aller", "toti.jpg_allero", "toti.jpg_aller", "toti.jpg_altler"})
        Return MaListe
    End Function


msgbox(Montableau.?????("toto.jpg_*"))

Afficher la suite 

Votre réponse

7 réponses

Meilleure réponse
Messages postés
14319
Date d'inscription
vendredi 14 mars 2003
Dernière intervention
11 décembre 2018
3
Merci
Bonjour,

Dim lNb as Integer=0
For Each lStr As String In MaListe
if lStr.StartWith("MaChaine") Then lNb+=1
Next


Mon site

Merci NHenry 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 100 internautes ce mois-ci

Commenter la réponse de NHenry
Messages postés
14319
Date d'inscription
vendredi 14 mars 2003
Dernière intervention
11 décembre 2018
3
Merci
Bonjour,

C'est un code qui parcours la liste, chaine par chaine.
Donc le StartWith fonctionnera.

Sinon, je ne vois pas comment faire.

Mon site

Merci NHenry 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 100 internautes ce mois-ci

Commenter la réponse de NHenry
Messages postés
76
Date d'inscription
jeudi 14 mai 2009
Dernière intervention
2 août 2018
0
Merci
Utilise les regex:

regex.isMatch(taChaine,"toto.jpg_*")


Je suis pas sur mais il y a peut-etre meme une fonction qui fait exactement ce que tu veut : compter le nombre d'element
Commenter la réponse de eccsup
Messages postés
262
Date d'inscription
mardi 26 février 2002
Dernière intervention
27 février 2012
0
Merci
Merci pour ton aide.

J'ai une erreur : La conversion du type List(Of String) en type String n'est pas valide.

Le but exacte de la manœuvre c'est la suivante :


Private Function MonTableau()
        Dim sTableau As New List(Of String)({"toto.jpg_1", "titi.jpg_1", "toto.jpg_2", "toto.jpg_3", "titi.jpg_2", "titi.jpg_3", "toto.jpg_4"})
        Return sTableau
    End Function


Dim DansCesItems As Object = System.Text.RegularExpressions.Regex.IsMatch(MonTableau1, "toto.jpg_*")


For each MaValeur in DansCesItems
msgbox(MaValeur)
Next

Commenter la réponse de cs_fabiano13
Messages postés
262
Date d'inscription
mardi 26 février 2002
Dernière intervention
27 février 2012
0
Merci
Merci pour m'aider.

Seulement StartWith ne marche pas avec une liste !

Il n'y a aucun moyen de le faire directement dans le in ?

J'ai pensé faire avec regex !

As-tu une idée ?

D'avance merci.
Fabiano
Commenter la réponse de cs_fabiano13
Messages postés
262
Date d'inscription
mardi 26 février 2002
Dernière intervention
27 février 2012
0
Merci
Merci, ça marche super bien.

A+
Commenter la réponse de cs_fabiano13
Messages postés
14319
Date d'inscription
vendredi 14 mars 2003
Dernière intervention
11 décembre 2018
0
Merci
Bonsoir,

Pense à mettre "Réponse acceptée" sur le ou les messages qui t'ont aidés ;)

Mon site
Commenter la réponse de NHenry

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.