For each line & replace

  • VB.NET

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    For each line & replace

    Hallo liebes VB-Paradise-Forum,
    ich hab mich gerade eben hier Registriert und wollte als Vorwort erstmal "Hallo!" Sagen, hab schon viele meiner Probleme durch Thread-Treffer seitens Google gelöst.
    Diesmal fand ich leider nichts richtig passendes zu meinem Problem, weder hier, noch irgendwo anders im Interconnected Network aka. Internetz. ;)

    Folgendes Problem: Ich habe eine Textbox in der zum teil folgendes geschrieben wird:

    Spoiler anzeigen

    Quellcode

    1. .DesignerKlasse {
    2. trans: block duration ease-out;
    3. anim: single duration linear;
    4. backg: #VVV;
    5. font-deco: strikeout 2px;
    6. }


    nun möchte ich jede Zeile auslesen, das klappt soweit mit
    Spoiler anzeigen

    VB.NET-Quellcode

    1. For Each Line As String In TextBox1.Text.Split(vbNewLine)
    2. MsgBox(Line) 'Nur zum sehen der aktuellen Zeile
    3. Next


    Das Problem ist nur, wenn ich diese Zeile x mal kopieren möchte und dann jede Zeile mit einem anderen Prefix setzen will, klappt das nicht. Ich schaff es maximal den internen String zu ersetzen, was mir aber nichts bringt.
    Spoiler anzeigen

    VB.NET-Quellcode

    1. If Line.Contains("anim:") Then
    2. Line = Line.Replace("anim:", "prefix1:")
    3. End If


    Jemand eine Idee? Es sollte zum Schluss ungefähr so aussehen
    Spoiler anzeigen

    Quellcode

    1. .DesignerKlasse {
    2. trans: block duration ease-out;
    3. anim: single duration linear;
    4. anim_prefix0: single duration linear;
    5. anim_prefix1: single duration linear;
    6. anim_prefix2: single duration linear;
    7. backg: #VVV;
    8. font-deco: strikeout 2px;
    9. }



    Hoffe ihr hab verstanden was ich vor habe. :|
    Gruß,
    Max


    (und ja, ich benutze WPF, keine normale VB.net Projektmappe)

    Edit by ErfinderDesRades: (Thema verschoben) Bitte richtiges UnterForum wählen!
    Du magst zwar Wpf benutzen, das Thema ist aber einfache String-Verarbeitung

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „ErfinderDesRades“ ()

    @Max.Scopp: Willkommen im Forum. :thumbup:
    Mach es mal so:

    VB.NET-Quellcode

    1. Dim lines() = TextBox1.Lines
    2. For i = 0 To lines.Length - 1
    3. If lines(i).Contains("anim:") Then ' dieses If kannst Du auch weglassen.
    4. lines(i) = lines(i).Replace("anim:", "prefix1:")
    5. End If
    6. ' ...
    7. Next
    8. TextBox1.Lines = lines
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    Max.Scopp schrieb:

    allerdings nicht in WPF
    Was genau funktioniert da nicht?
    ------
    Gugst Du hier.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „RodFromGermany“ ()