Ohne mir nun den Code von Pos anzugucken - Pos kann mehr als nur ein Zeichen vergleichen, es kann ganze Zeichenketten vergleichen. Somit ist der Code vermutlich anders aufgebaut und dadurch langsammer.
Man kann sich das
Pas auch sparen und direkt die Chars überprüfen. Dann muss man drauf achten, dass keiner der Strings leer ist. Hier ein Beispiel:
Delphi-Quellcode:
function RemoveCharsFromString(const AStr, CharsToRemove: string): string;
var
i, k: Integer;
begin
Result := AStr;
if Length(CharsToRemove) = 0 then
Exit;
for k := 0 to Length(CharsToRemove) do
for i := Length(Result) downto 0 do
if Length(Result) > 0 then
if CharsToRemove[k] = Result[i] then
Delete(Result, i, 1);
end;