Split Wörter von einer TextBox und dann zufällig ausgeben

  • VB.NET
  • .NET (FX) 3.0–3.5

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von EaranMaleasi.

    Split Wörter von einer TextBox und dann zufällig ausgeben

    Hallo, ich bäuchte einmal Hilfe von den Experten.

    Ich habe eine Textbox mit folgendem Inhalt.

    Quellcode

    1. Das ist ein Beispiel Text1. [Wert1, Wert2, Wert3] Hier noch ein anderer Text. [Wert10, Wert20, Wert30]


    Jetzt möchte ich, dass die Werte in den eckigen Klammern gesplittet werden und dann zufällig ausgeben werden. Aber mit dem Text der in der Textbox steht.

    Dass dann zum Beispiel so aussieht:

    Quellcode

    1. Das ist ein Beispiel Text1. [Wert3, Wert2, Wert1] Hier noch ein anderer Text. [Wert20, Wert10, Wert30]


    Kann mir hier jemand weiterhelfen?

    MfG
    Nun, du wirst dir erstmal mit .IndexOf und .Substring dir alles rausholen müssen, was in den Klammern steht. (ginge auch mit RegEx)
    Hast du das (also einen String ohne Klammern), dann machst nen .Split, wodurch du die einzelnen Werte erhälst. Entsprechend der Anzahl der Elemente, die daraus entstehen, würfelst du mithilfe der Random Klasse aus, welche Elemente nun nacheinander eingefügt werden.
    (Achtung, nur ein und dieselbe Instanz von Random verwenden. Das Reinitialisieren einer variable vom Typ Random kann zu exakt den selben Ergebnissen über mehrere Aufrufe hinweg führen.) Dabei solltest du dir merken, welche Zahlen bereits ausgewürfelt wurden, damit du im Falle, dass diese Zahl bereits kam, noch einmal Würfeln kannst.
    Die Ausgewählen Elemente werden dann dem originalen String dann per .Insert wieder hinzugefügt. Natürlich nicht vergessen vorher die alten Werte in dem String per .RemoveAt zu Löschen.