VB.NET manipulation de chaine

Fermé
Kamas - 18 juil. 2009 à 12:30
gigaga Messages postés 2346 Date d'inscription vendredi 20 juin 2008 Statut Membre Dernière intervention 22 août 2014 - 19 juil. 2009 à 21:16
Bonjour à tous,
J'ai une chaine " 0|1|2772591;Srra-g "

J'aimerais récupérer " 2772591 " qui se trouve entre | et ; , sachant que ce qu'il y à avant et après peut changer.

MErci.

3 réponses

gigaga Messages postés 2346 Date d'inscription vendredi 20 juin 2008 Statut Membre Dernière intervention 22 août 2014 301
18 juil. 2009 à 12:37
Utilise les expressions régulieres.
Une expression du type :
^.*\|(.*?);.*$

ou, si le symabole ? n'est pas compris (consommation minimale) et que ce qui est à récupérer est toujours un nombre :
^.*\|([0-9]+);.*$
0
Salut,
Tu peux montrer avec le code source stp
Merci
0
?
0
gigaga Messages postés 2346 Date d'inscription vendredi 20 juin 2008 Statut Membre Dernière intervention 22 août 2014 301
19 juil. 2009 à 21:16
Un minimum de recherche non? google --> "vb .net expressions régulière"

Imports System.Text.RegularExpressions
Dim MatchObj as Match = Regex.Match(ligne,"^.*\|([0-9]+);.*$")
if (MatchObj.Success) then
' Valeur contenue dans MatchObj.Groups(1)
end if
0