![]() |
String einfügen
Hallo alle zusammen
habe mal wieder ein problem... habe auch schon such funktion benutzt...finde leider nichts... zum problem mein string ist 1234567890ABCDEF brauche aber 12,34,56,78,90,AB,CD,EF,\ und dies alles mit einer for schleife im memo sind mehre lines kurz gesagt nach jeder 2 stelle brauche ich ein komma und am ende jeder line ein ,\ jemand von euch ne idee...!! |
Re: String einfügen
Das müsste eigentlich zielführend sein. Sherlock |
Re: String einfügen
Und am Einfachsten die Schleife rückwärts laufen lassen.
Wenn du von vorn nach hinten durchgehst, dann mußt du die eingefügten Zeichen mit beachten. (also in deinem Fall müßtest du ständig die Stringlänge neu berechnen oder eine While-Schleife nutzen oder für die For-Schleife direkt via Formel die neue Endlänge berechnen. und dann mußt du ja alle 3 Zeichen dein Komma reinmachen, da 2 Zeichen + Komma = 3) |
Re: String einfügen
Danke für eure Hilfe
habe es so gemacht...
Delphi-Quellcode:
gibt bestimmt bessere lösungen...aber da die länge fest ist...reicht es
procedure TForm1.Button7Click(Sender: TObject);
var I : Integer; Target : String ; begin for i := 0 to Richedit7.Lines.Count - 1 do begin Target := Richedit7.Lines[i]; Insert(',', Target, 3); Insert(',', Target, 6); Insert(',', Target, 9); Insert(',', Target, 12); Insert(',', Target, 15); Insert(',', Target, 18); Insert(',', Target, 21); Insert(',', Target, 24); Insert(',', Target, 27); Insert(',', Target, 30); Insert(',', Target, 33); Insert(',', Target, 36); Insert(',', Target, 39); Insert(',', Target, 42); Insert(',', Target, 45); Insert(',\', Target, 48); Richedit7.Lines.Add(Target); end; end; |
Re: String einfügen
fällt dir vielleicht was auf?
gleiche Befehler hintereinander und dabei auch noch gleicher/gleichmäßiger Index. was sagt uns das nun?
Delphi-Quellcode:
procedure TForm1.Button7Click(Sender: TObject);
var i, i2 : Integer; Target : String; begin for i := 0 to Richedit7.Lines.Count - 1 do begin Target := Richedit7.Lines[i]; for i2 := Length(Target) div 2 downto 0 Insert(',', Target, i2 * 2); Richedit7.Lines[i] := Target + '\'; end; end; |
Re: String einfügen
Delphi-Quellcode:
Müsste eigentlich auch funktionieren.
function StrMitKommata(const s: string): string;
var i: integer; begin Result := s; for i := 1 to Length(s) div 2 do Insert(',',Result,i * 3); Result := Result + '\'; end; ... for i := 0 to RichEdit.Lines.Count - 1 do RichEdit.Lines[i] := StrMitKommata(RichEdit.Lines[i]); |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:44 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz