Recuperer nombre dans une chaine de caractere

jacobmahone - 7 mai 2018 à 15:19 - Dernière réponse : Whismeril 11965 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 16 août 2018 Dernière intervention
- 7 mai 2018 à 18:06
Bonjour,
je desire recuperer chaque nombre dans une chaine de caractere et le mettre dans un combobox
exemple si str= mimi24 est avec toto64 en compagnie de dianne9
je dois avoir dans mon combobox ceci:
<<combobox>>
24
64
9
voici mon code qui marche mais affiche ceci : 24649
Dim l As Integer
                Dim ascii As Integer
                Dim numerique As String = ""
                For l = 1 To Len(message)
                    ascii = Asc(Mid(message + vbNewLine, l, 1))
                    If (ascii > 43 And ascii < 47) Or (ascii > 47 And ascii < 58) Then numerique = numerique & Mid(message + vbNewLine, l, 1)
                Next
                'coeur d'attente
                If Not ComboBox1.Items.Contains(numerique) Then
                    ComboBox1.Items.Add(numerique)
                End If
Afficher la suite 

Votre réponse

4 réponses

Whismeril 11965 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 16 août 2018 Dernière intervention - 7 mai 2018 à 15:28
0
Merci
Bonjour,

utilise une regex
 \d+

Voir un exemple ci dessous, regarde l'onglet "Table"

http://regexstorm.net/tester?p=%5cd%2b&i=mimi24+est+avec+toto64+en+compagnie+de+dianne9+


Un petit tuto (en C#)
https://lgmorand.developpez.com/dotnet/regex/

Pour traduire le C# en VB.NET
https://www.google.com/search?q=C%23+to+vb&sourceid=ie7&rls=com.microsoft%3Afr-FR%3AIE-Address&ie=&oe=&gws_rd=ssl
cs_JMO 1855 Messages postés jeudi 23 mai 2002Date d'inscription 24 juin 2018 Dernière intervention > jacobmahone - 7 mai 2018 à 17:21
Bonjour jacobmahone,

Bonjour Whismeril (bravo pour ton dernier tutoriel concernant le binding)

En ajoutant les références
Option Strict On
Option Explicit On
Imports System.Text.RegularExpressions
et
        Dim message As String = "mimi24 est avec toto64 en compagnie de dianne9 "
        Dim pattern As String = "\d+"

        For Each m As Match In Regex.Matches(message, pattern)
            MessageBox.Show(m.Value)
        Next

Il te suffit donc de constituer ta collection.

Oubli:
Afin de faire du vb.Net et non un mix vb6 & vb.Net, dans les références du projet (espaces de noms importés), il faut décocher la référence à "Microsoft.VisualBasic".
Whismeril 11965 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 16 août 2018 Dernière intervention - 7 mai 2018 à 18:06
Salut Jean Marc, merci

@Jacob
son usage m'echape
et pourquoi je t'ai mis un lien vers un tuto?
Commenter la réponse de Whismeril

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.