Aus 1 String = In 2 Strings aufteilen?

  • VB.NET

Es gibt 59 Antworten in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    VB.NET-Quellcode

    1. Dim txt = "HALLOvbparadiseDASistMEINstring...............................WERkannMIRhelfen"
    2. Dim parts() = txt.Split({"."c}, StringSplitOptions.RemoveEmptyEntries)
    3. parts(0)+="......"
    4. parts(1)="......"+parts(1)
    Liebe Grüße
    Roland Berghöfer

    Meine aktuellen und kostenlos verwendbaren Tools (mit VB.NET erstellt): freeremarkabletools.com | priconman.com | SimpleCalendar | AudibleTouch | BOComponent.com | bonit.at
    Dann müsste Rods Code immer funktionieren.... oO
    Oder sollen die sechs Punkte vor und nach den Strings erhalten bleiben?
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D

    dive26 schrieb:

    VB.NET-Quellcode

    1. Dim txt = "HALLOvbparadiseDASistMEINstring...............................WERkannMIRhelfen"
    2. Dim parts() = txt.Split({"."c}, StringSplitOptions.RemoveEmptyEntries)
    3. parts(0)+="......"
    4. parts(1)="......"+parts(1)


    Danke hast mein Tag gerettet, endlich gelöst!!!

    Aber wozu:

    parts(0)+="......"
    parts(1)="......"+parts(1)

    Die 6 Punkte sollen nicht angetzeigt werden, nur die Strings ohne Punkte als String1 und 2.
    Funzt aber 100% wenn man die 2 Zeilen weglässt, von daher tausend dank!

    SEX schrieb:

    -Kein Punkt taucht in String1 oder 2 auf

    SEX schrieb:

    -String1 endet mit 6 Punkten
    -String2 fängt nach 6 punkten an

    Ist das nicht ein widerspruch in sich?

    Wenn das Problem ist, dass die Punkte verschwinden sollen und du nacher zwei strings hast, dann ist Rods Lösung perfekt.

    EDIT:
    @SEX:

    Lese doch mal bitte hier was da steht. Da kommt deine Lösung her!

    <ironie>+1 fürs Lesen und Testen von Posts anderer.</ironie>
    Kannst du bitte die Frage beantworten, ob du prüfen musst, dass mindestens 6 Punkte da sind, denn Rods Code würde auch bei 2 Punkten anspringen...

    Ansonsten, wie schon gesagt, du suchst den letzten Index vom Punkt (wäre dann der Anfang vom String 2) und schneidest den letzten Teil ab da aus.

    Ähm, die Lösung, die dir den Tag gerettet hat, war von Rod, schon zig Beiträge vorher.
    Die ersten zwei Zeilen sind doch exakt der Code von Rod?!
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D
    Ich verstehe gerade kein Wort.

    Was willst du genau? Du beantwortest keine Fragen, sondern widersprichst dir jedes Mal selbst.

    Wenn du den Text vor und nach Punkten finden willst, ist die Rods Lösung perfekt. Wenn du wissen musst, ob zuerst 6 Punkte da sind, dann musst du mehr machen. Also?

    Ach so, in Strings direkt Punkte? Zwischen den Buchstaben?

    Dann musst du nach dem ersten Buchstaben nach String1 suchen und ab da trennen.

    sonne75 schrieb:

    Ich verstehe gerade kein Wort.

    Was willst du genau? Du beantwortest keine Fragen, sondern widersprichst dir jedes Mal selbst.

    Wenn du den Text vor und nach Punkten finden willst, ist die Rods Lösung perfekt. Wenn du wissen musst, ob zuerst 6 Punkte da sind, dann musst du mehr machen. Also?

    Ach so, in Strings direkt Punkte? Zwischen den Buchstaben?

    Dann musst du nach dem ersten Buchstaben nach String1 suchen und ab da trennen.


    Nein ROD's lösung funktioniert nicht ganz so richtig.
    Es teilt den String solange bis ein punkt folgt.
    Aber in String1 und 2 können auch Punkte mit dabei sein.

    Wenn ich seine Lösung benutze, gibt er die Strings nicht vollständig aus sondern hört bei Punkten auf zu lesen und dann gibt es mir dadurch nur ein Teil vom String wenn Punkte mit dabei sind :(


    also, du hast einen string mit ner anhäufung von punkten, die sich jedoch auch in deinen gewünschten strings befinden können?

    Genau so ist es.

    sonne75 schrieb:

    Dann musst du nach dem ersten Buchstaben nach String1 suchen und ab da trennen.

    Hier ist die Lösung.

    Gehst nach dem Ende von String 1 (den du ja hast) den String Zeichen für Zeichen durch (schneidest ab String1 ab) und schaust, ob es ein Buchstabe ist (Char.IsLetter müsste es geben), wenn ja, da ist der Anfang von String 2.
    Also wenn du alles GENAU nach dem 6. Punkt haben möchtest:

    VB.NET-Quellcode

    1. Option Strict On
    2. Public Class Form1
    3. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    4. Dim txt As String = "Test...............Test"
    5. Dim input = GetIndices(txt, "."c)
    6. Dim nachKomma As String = txt.Substring(input(5))
    7. Dim vorKomma As String = txt.Substring(0, input(5))
    8. MessageBox.Show(vorKomma)
    9. MessageBox.Show(nachKomma)
    10. End Sub
    11. Private Iterator Function GetIndices(Of t)(liste As IEnumerable(Of t), input As t) As IEnumerable(Of Integer)
    12. For indic = 0 To liste.Count - 1
    13. If liste(indic).Equals(input) Then
    14. Yield indic
    15. End If
    16. Next
    17. End Function
    18. End Class
    @RushDen
    Also das geht mal nicht. Die Definition deiner Function klappt so nicht
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D
    Hier geht's aber um VB 2010
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D