Announcement

Collapse
No announcement yet.

String händeln

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • String händeln


    arrrggggg

    so jetzt erstmal ein freundliches hallo an alle..

    brauche mal bitte unterstützung in sachen string handeln .net.

    folgendes:
    habe eine ini datei, wo ich einen schlüssel auslese (funktioniert)
    Dieser schlüssel besitzt viele Strings die mit einem symikolion getrennt sind.
    z.B. [string];[string]

    Desweiteren sind die einzelnen strings mit einem pfeil getrennt
    z.B. [string] --> [string];[string] --> [string];

    wie kann ich diesen einen kompletten string durchforsten und mir das raussuchen was ich brauche.

    1. brauche jeweils das symikolion, und dann dann wort davor.
    2. der Pfeil muss wegund das wort davor brauche ich auch
    3. der pfeil kann aber auch so aussehen -> oder -->

    Bitte nicht lachen....

    Weis nicht wie ich in .net strings händeln muss...

    meine idee ist es win api die ini auslesen.
    alles in ein String,

    dim ausgelesen as string = ""
    ausgelesen.getString() <-- ini auslesen
    ausgelesen.indexof(";") <--- würde mir aber nur das erste ; liefern
    wie nutzen ich denpointer?

    usw... usw....

    Wäre nett wenn mich jemand an die hand nimmt und mal die große weite welt zeigt...
    Hat jemand rat?

    Danke

  • #2
    Hallo,

    die String-Klasse stellt die Methode Split zur Verfügung, um eine Zeichenkette in die einzelnen Bestandteile aufzuteilen.

    Weitaus mächtigere Funktion stellt die Klasse Regex aus dem Namespace System.Text.RegularExpressions zur Verfügung. Für einfache Aufteilungen gibt es auch dort die Methode Split. Das folgende Beispiel splittet bei einem Verzeichnispfad die einzelnen Unterverzeichnisse auf:

    <div style="font-family: Consolas; font-size: 10pt; color: black; background: white;"><p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <span style="color: blue;">Dim</span> aParent <span style="color: blue;">As</span> TreeNode</p><p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <span style="color: blue;">Dim</span> sItems <span style="color: blue;">As</span> <span style="color: blue;">String</span>()</p><p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <span style="color: blue;">Dim</span> sItem <span style="color: blue;">As</span> <span style="color: blue;">String</span></p><p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <span style="color: blue;">Dim</span> aRX <span style="color: blue;">As</span> <span style="color: blue;">New</span> System.Text.RegularExpressions.Regex(<span style="color: #a31515;">"\\"</span>)</p><p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; sItems = aRX.Split(TextBoxPath.Text)</p><p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; aParent = TreeView1.Nodes.Add(<span style="color: #a31515;">"Bestandteile"</span>)</p><p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <span style="color: blue;">For</span> <span style="color: blue;">Each</span> sItem <span style="color: blue;">In</span> sItems</p><p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; aParent.Nodes.Add(sItem)</p><p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <span style="color: blue;">Next</span> sItem</p></div>

    Über die Methode Matches werden bei komplexeren Zeichenketten die einzelnen "Datensätze" (Zeilen) als ein Array von Match-Instanzen zurückgeliefert, wobei über die Groups-Sammlung auch die einzelnen Elemente eines "Datensatzes" einzeln auslesbar sind.


    Über die URL http://www.zvon.org/other/PerlTutori...put/index.html ist ein Regular Expressions Tutorial zu finden, in dem die verfügbaren Metazeichen vorgestellt werden.
    Zuletzt editiert von Andreas Kosch; 20.01.2007, 09:55. Reason: URL für das RegEx-Tutorial beigefügt

    Comment


    • #3
      ok...

      hört sich plausibel an...

      werde das Montag gleich mal umsetzen, und auf meine Nöte anwenden.
      Danke, für die sehr gute Erklärung.

      Gruß
      Andreas Mueller

      melde mich sonst nochmal bei Problemen

      Comment

      Working...
      X