![]() |
Container Schleife
Hey Leute. Ich habe folgendes Problem. Ich soll mithilfe einer Containerschleife einen Text manipulieren.
![]()
Code:
Durch diese Schleife soll der Text oben mit dem Ersetzungsbuchstaben manipuliert werden. Kann mir jemand helfen? Ist sehr dringend.
var text, a, b: String;
z: Char; begin text := Edit1.Text; a := Edit3.Text; b := Edit4.Text; for z in text do Edit2.Text := text; end; Danke schon einmal im voraus. =) |
Re: Container Schleife
Schau mal nach StringReplace
|
Re: Container Schleife
Hey danke für die schnelle Antwort.
Wenn ich diesen Befehl benutze, komme ich aber auch ohne diese Schleife aus. Es muss aber mit der Schleife gemacht werden. |
Re: Container Schleife
es sollte in etwa so funktionieren.
Delphi-Quellcode:
Aber was immer eine Containerschleife sein mag?
Edit2.Text:='';
for z:=1 to length(Edit1.text) do begin if edit1.Text[z] = a then edit2.text := edit2.text + b else edit2.text := edit2.text + edit1.text[z]; end; Grüße Klaus |
Re: Container Schleife
Bei der Containerschleife (for ELEMENT in CONTAINER) also in meinem Fall for z in text wird z mit jedem einzelnen Char aus text belegt. Wenn z dann den Char zugewiesen bekam, der in dem linken der kleinen Felder steht, so soll die Schleife dann diesen Char mit dem Buchstaben ersetzen der im rechten kleinen Kästchen steht.
Ach und außerdem. Wenn man nach getaner Arbeit wieder auf das oberste Edit-Feld klickt soll alles geleert werden. Verrät mir auch da noch jemand wie das funktioniert? Danke.^^ |
Re: Container Schleife
Zitat:
Naja, roter Kasten, aber ich poste meinen Vorschlag trotzdem mal :wink:
Delphi-Quellcode:
Mfg
function Manipulieren(Text: String; Old, New: Char): String;
var i: Integer; begin Result := Text; for i := 1 to Length(Result) do if Result[i] = Old then Result[i] := New; end; //Aufruf: Edit2.Text := Manipulieren(Edit1.Text, 'a', 'e');//ersetzt 'a' durch 'e' |
Re: Container Schleife
Zitat:
Ist eine abgewandelte Zählschleife. Muss sie aber so benutzen. :( |
Re: Container Schleife
meinst so was?
Delphi-Quellcode:
function translate(const quelle: string; vonC, NachC: char): string;
var c: char; begin result := ''; for c in quelle do if c = VonC then result := result + NachC else result := result + c; end; |
Re: Container Schleife
Delphi-Quellcode:
Dieses Konstrukt kenn ich nur von Bash-Skripten. Es wäre mir neu, wenn das in Delphi auch ginge.
for c in quelle do
|
Re: Container Schleife
Zitat:
noch 'n schönen abend |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:54 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