String zwischen zwei "" Zeichen ermitteln

  • VB.NET

Es gibt 12 Antworten in diesem Thema. Der letzte Beitrag () ist von Gutelaunetyp.

    String zwischen zwei "" Zeichen ermitteln

    Hallo zusammen,

    ich versuche gerade einen String zwischen zwei "" zu ermitteln

    Dim Address As String = " Test Test345 "Test 123 233" ddddd"

    Dim MyInfo() As String = Address.Split("""")
    For Each s As String In MyInfo
    Debug.WriteLine(s)
    Next

    wie kann ich nur den Teil Test 123 233 ermitteln wobei die Länge variabel ist?

    Vielen Dank Goof


    VB.NET-Quellcode

    1. Dim Address As String = " Test Test345 ""Test 123 233" ddddd"" '<-deins leicht verändert
    2. Dim rg As New System.Text.RegularExpressions.RegEx("HIER KOMMT DEIN PATTERN")
    3. For Each mt As System.Text.RegularExpressions.Match In rg.Matches(Address)
    4. Debug.WriteLine(mt.Value.ToString())
    5. Next

    den Pattern musste noch selber machen, ich will dir ja keinen vollständigen C&P Code Posten
    http://de.wikipedia.org/wiki/Regulärer_Ausdruck

    P.S.: benutz doch bitte die vb-Tags um Code zu posten...
    Ich wollte auch mal ne total überflüssige Signatur:
    ---Leer---

    Quellcode

    1. Dim str As String
    2. Dim strArr() As String
    3. Dim strArr1() As String
    4. str = txtArgs.Text
    5. strArr = str.Split(CChar(" "))
    6. strArr1 = str.Split(CChar(""""))
    7. TxtBx_Environment.Text = strArr(4)
    8. TxtBx_DirEnvironment.Text = strArr1(3)


    Habe es jetzt so gelöst. Danke für Eure Hilfe
    @%P%: ne das war ausversehen^^ aber den Pattern selbst zusammenstellen das wäre finde ich gut gewesen ;)
    @TE: RegEx wäre aber wesentlich schöner :P
    Ich wollte auch mal ne total überflüssige Signatur:
    ---Leer---
    @TE

    Wer is denn TE??
    //EDIT: Achja, TE=ThreadErsteller, also Goof. Ich steh wohl auf'm Schlauch
    Aber meine Zustimmung, RegEx ist hier echt schöner, und weniger zu schreiben ^^;
    Wenn Ich den Pattern nicht dazugeschrieben hätte, wäre das wieder ein endlose-Thread geworden, weißt ja wie's so ist..

    %P% :thumbup:
    Hello World
    Hay,
    also erstmal funktioniert der String Dim Address As String = " Test Test345 "Test 123 233" ddddd" in Vb garnicht wegen den ".

    Wenn dann so : " Test Test345 ""Test 123 233"" ddddd"

    Der Regex dafür ist "+([^"]+)

    Code:

    VB.NET-Quellcode

    1. Dim Address As String = " Test Test345 ""Test 123 233"" ddddd"
    2. Dim m As MatchCollection = Regex.Matches(Address, """+([^""]+)")
    3. MsgBox(m(0).Groups(1).Value)


    Mit m(itemnummer).groups(1).value kannst du bestimmen welchen Match du haben willst ^^


    Mfg Kevin.