VB.NET manipulation de chaine

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.
Configuration: Windows Vista
Firefox 3.0.11

3 réponses

  1. 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]+);.*$
    1. ?
      1. 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