Meinst Du sowas?
Ebenfalls nur hingedaddelt:
Delphi-Quellcode:
function DeleteZeichen(sZeichenfolge : String; chZeichen : Char; iPosition : Integer) : String;
var
i : Integer;
begin
Result := '';
for i := 1 to Length(sZeichenfolge) do begin
if (i mod iPosition = 0)
and (Copy(sZeichenfolge,i,1) = chZeichen) then
else Result := Result + Copy(sZeichenfolge,i,1);
end;
end;
iPosition muss hierbei um eins größer sein als bei InsertZeichen.
Oder:
Delphi-Quellcode:
function DeleteZeichen(sZeichenfolge : String; chZeichen : Char; iPosition : Integer) : String;
var
i : Integer;
iPos : Integer;
begin
iPos := iPosition + 1;
Result := '';
for i := 1 to Length(sZeichenfolge) do begin
if not (i mod iPos = 0) then begin
Result := Result + Copy(sZeichenfolge,i,1);
end;
end;
end;
iPosition muss mit dem von InsertZeichen übereinstimmen.
chZeichen wird nicht benötigt, man könnte aber bei der Positionsabfrage noch prüfen, ob dort auch dieses Zeichen gefunden wird. Wenn nein, hat man einen Zeichenfolge, die eher ungeeignet für die Verarbeitung ist, da (vermutlich) das gesuchte Zeichen nicht per InsertZeichen eingefügt wurde.