Entwickler-Ecke

Sonstiges (Delphi) - bei string das erste zeichen löschen....


Anonymous - Mi 10.12.03 17:15
Titel: bei string das erste zeichen löschen....
hallo,

ich hab ein memo , welches ca so aussieht....


Zitat:

-1-1
-2-5
-3-6


Jetzt möchte ich in jeder Zeile das erste Zeichen löschen...so das es in etwa so aussieht....


Zitat:

1-1
2-5
3-6



wie genau stell ich das an...finde keinen Ansatz!

Gruß

Muetzi


DeCodeGuru - Mi 10.12.03 17:19

Hallo,

dann werden wir dir jetzt mal zu einem Ansatz verhelfen :wink:

Guck mal hier im Forum oder in der Delphi-Hilfe nach Suche in: Delphi-Forum, Delphi-Library DELETE. Damit kann man Zeichenketten aus Zeichenketten entfernen. Das dürfte dir ja eigentlich reichen, damit du deinen Ansatz findest. :)


Anonymous - Mi 10.12.03 17:28

hmm, aber z.B.



Delphi-Quelltext
1:
delete(memo1.lines[0],1,1);                    



funktioniert nicht!


Muetzi


G-man - Mi 10.12.03 17:31

Dann musst du noch mal ind die Delphi-Hilfe, zu Delete gucken...


Anonymous - Mi 10.12.03 17:47

ich habe schon verschiedenes ausprobiert, aber ich verstehs nicht..


kann mir nicht jemand helfen?


Gruß

Muetzi


DeCodeGuru - Mi 10.12.03 21:18

iextreme hat folgendes geschrieben:
hmm, aber z.B.

Quelltext
1:
delete(memo1.lines[0],1,1);                    

funktioniert nicht!


Kein Wunder! Delete kann nur Zeichen aus einer Variable entfernen :wink: Ich würde halt in der Hilfe genau nachlesen.

Delphi-Hilfe hat folgendes geschrieben:
Beschreibung

Delete entfernt, beginnend mit S[Index], Count Zeichen aus dem String S. S ist eine String-Variable. Index und Count sind Integer-Ausdrücke.

Ist der Wert von Index größer als die Länge von S, werden keine Zeichen gelöscht. Werden mit Count mehr Zeichen angegeben, als beginnend bei S[Index] im String vorhanden sind, wird der Rest des Strings gelöscht.


@Muetzi: Also, du hast deine Daten in einem Memo. Nun kannst du folgendermaßen vorgehen. Du gehst mit einer For-Schleife alle Zeilen des Memo-Felder durch, lädst jede Zeile in einen String und wendest auf diesen String die Delete-Prozedur an. Danach schreibst du denn String wieder in die entsprechende Zeile des Memos und fertig. :)


Motzi - Do 11.12.03 09:56

Oder gleich per Copy()... :roll: (Tipp: auch bei dieser Funktion hilft die Online-Hilfe von Delphi weiter! ;))


ShadowThief - Do 11.12.03 12:21

ich würde es mit RightStr machen (Length(s) - 1).