Zitat von
Klaus01:
Delphi-Quellcode:
function replace(Quelle,suche,ersetze:string):String
var
i:Byte;
begin
result:='';
for i:=1 to length(quelle) do
if quelle[i] = suche then
result:=result+ersetze
else
result:=result+quelle[i];
end;
Dein Funktionsheader macht wenig Sinn
Man kann einen String als suche übergeben, du erlaubst aber bei dem Vergleich nur ein Zeichen von Quelle...
Ich finde das hier sinnvoller:
function replace(Quelle: String; suche,ersetze:char):String
Wobei das natürlich nur für ein Zeichen geht, für das Problem ö zu oe müsste man das dann eben ein bisschen komplizierter machen.
Delphi-Quellcode:
function replace(Quelle,suche,ersetze:string):String
var
i:Byte;
begin
result:='';
for i:=1 to length(Quelle)-length(suche)+1 do
begin
if Copy(Quelle, i, length(suche))=suche then
begin
result:=result + ersetze + Copy(Quelle, i+1, length(Quelle));
replace(result, suche, ersetze); // mir viel gerade nix besseres ein als eine Rekursion, darf ruhig korrigiert werden
break;
end
else
result:=result+quelle[i];
end;
end;
(Ist ungetestet und ich glaube auch, dass da irgendwo ein Fehler drin ist...bitte korrigiert mich!)
Flare