Pascal(Delphi) Wörter mit StringReplace ersetzen?
Hi.
Wie kann man in Pascal(Delphi) mit StringReplace mehrere Wörter ersetzen.
Z.B. Wenn Mann 'Hallo' schreibt, dass es in 'Welt' und wenn man 'Delphi' schreibt, dass es in 'Pascal' umgewandelt wird?
2 Antworten
vorab: ich würde statt StringReplace/ReplaceStr/ReplaceText TStringHelper.Replace benutzen, falls deine Delphi-Version das kann.
Mehrere Ersetzungen kannst du untereinander schreiben:
s := s.Replace('Hallo', 'Welt');
s := s.Replace('Pascal', 'Delphi');
Flexibler wäre aber, das gleich in ein array zu packen wie
var
a : array[0..1, 0..1] of String = (('Hallo', 'Welt'), ('Pascal', 'Delphi'));
i : Integer;
s : String;
begin
s := 'Hallo, ich bin Pascal';
for i := Low(a) to High(a) do begin
s := s.Replace(a[i, 0], a[i,1]);
end;
end.
ReplaceString(ReplaceString(S, 'Hallo', 'Welt', Flags), 'Delphi', 'Pascal', Flags)
Woher ich das weiß:Berufserfahrung – Anwendungen und Komponenten für die Arbeit ertsellt