Ergebnis 1 bis 6 von 6
  1. #1
    Wind & Wasser Avatar von Archy
    Registriert seit
    27.07.2008
    Beiträge
    134

    Standard [C#] Ein String kürzen an bestimmter Stelle

    Ich bräuchte mal Hilfe und zwar möchte ich den Text, wie er unten zu sehen ist, kürzen. Dabei möchte ich die ID + Doppelpunkt löschen. Ich habe zu Anfang versucht alles mit .Replace() zu ersetzen aber dann würden auch die Zahlen in den Gametiteln fehlen. Dann wollte ich mit Hilfe einer Schleife in jeder Zeile die ersten 10 Zeichen löschen, aber auch das funktioniert nicht, da die IDs manchmal kürzer oder länger sind.



    Für eure Hilfe wäre ich außerordentlich dankbar.

  2. #2
    DateMake Dialer
    Registriert seit
    12.08.2007
    Beiträge
    100

    Standard

    Regular Expression sind dein Freund.

  3. #3
    Fortgeschrittener Avatar von Padrino
    Registriert seit
    25.10.2011
    Beiträge
    37

    Standard

    Wenn man es nicht mit RegEx machen möchte, so würde ich es in deinem fall folgendermaßen machen...

    Wenn der Text jetzt z.b in einer Richtextbox steht:

    VB.Net
    Code:
            Dim neuerstring As String = ""
            For Each line In richtextbox1.lines
                neuerstring &= line.Replace("[" & (Split(Split(line, "[")(1), ":")(0)) & ":", Nothing) & vbNewLine
            Next
            MsgBox(neuerstring)
    Translated to C#
    Code:
    string neuerstring = "";
    foreach (object line_loopVariable in richtextbox1.lines) {
        line = line_loopVariable;
        neuerstring += line.Replace("[" + (Strings.Split(Strings.Split(line, "[")[1], ":")[0]) + ":", null) + Constants.vbNewLine;
    }
    Interaction.MsgBox(neuerstring);
    EDIT:// Ich habe vergessen, dass du nach jedem replacen(Einfügen in die Variable eine neue zeile manuell eintragen musst, sonst kommt da nur zusammengequetchter müll raus)
    Geändert von Padrino (05.11.2011 um 23:04 Uhr)

  4. Folgende Benutzer haben sich für diesen Beitrag bedankt:

    Archy (05.11.2011)

  5. #4
    Transpinguin Avatar von IRET
    Registriert seit
    02.09.2008
    Beiträge
    1.295

    Standard

    Die Stringklasse hat da eine Methode namens Remove. Die macht genau das was du brauchst.
    http://msdn.microsoft.com/en-us/library/d8d7z2kk.aspx
    Beispiel (25 ist die ID):
    C#:
    Code:
    string str = "blabla:25:xyz";
    str = str.Remove(6,3);
    VB.Net:
    Code:
    Dim str As String = "blabla:25:xyz"
    str = str.Remove(6, 3)
    Sollte "blabla" keine feste Größe haben hilft das hier:
    C#:
    Code:
    string str = "blabla:25:xyz";
    string[] str_arr = str.Split(':');
    str = str.Remove(str_arr[0].Length,3);
    VB.Net
    Code:
    Dim str As String = "blabla:25:xyz"
    Dim str_arr As String() = str.Split(":"C)
    str = str.Remove(str_arr(0).Length, 3)
    Und das selbe Spielchen halt wenn diverse andere Sachen eine unbestimmte Länge haben .

    Ich habe das jetzt mal einfach so von Hand geschrieben ohne es zu testen, also verzeiht mir bitte diverse Fehler .

  6. Folgende Benutzer haben sich für diesen Beitrag bedankt:

    Archy (06.11.2011)

  7. #5
    Neuling
    Registriert seit
    06.11.2011
    Beiträge
    2

    Standard

    Code:
    \[(\d+)\]:(.*)

  8. Folgende Benutzer haben sich für diesen Beitrag bedankt:

    blackberry (06.11.2011)

  9. #6

    Registriert seit
    17.06.2009
    Beiträge
    559

    Standard

    Zitat Zitat von Padrino Beitrag anzeigen
    @ocz: Wenn die Ids immer unterschiedlich lang sind, wie kann er dann das genaue ende von der id angeben?
    Substring(0,X)
    Schonmal was von strpos() bzw. indexOf() gehört?
    oh man, warum einfach, wenn es auch kompliziert geht...

Ähnliche Themen

  1. SQL Abfragen in PHP verkürzen?
    Von th3p0is0n im Forum PHP
    Antworten: 14
    Letzter Beitrag: 06.12.2010, 18:32
  2. [H] String ab bestimmter Position splitten
    Von hackerking im Forum .NET Sprachen - Techniken
    Antworten: 2
    Letzter Beitrag: 15.06.2010, 19:11
  3. Skype lässt PC abstürzen
    Von Polo88 im Forum Sonstiges
    Antworten: 2
    Letzter Beitrag: 02.10.2008, 10:06
  4. Spiele stürzen ständig ab
    Von terrorzwerg im Forum Anwendungssoftware
    Antworten: 8
    Letzter Beitrag: 12.07.2008, 15:41

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •