Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#12

Re: Zeichen in einem String ersetzen???

  Alt 16. Jun 2006, 01:45
Warum es mit Pos langsamer ist, kann man sich doch vorstellen, denn schließlich wird immer wieder der Sting von Anfang an durchsucht, selbst wenn schon ein Teil bearbeitet wurde und das immer wieder.

Delphi-Quellcode:
i := Pos('#', S);
While i > 0 do Begin
  S[i] := ',';
  i := PosEx('#', S, i + 1);
End;
Das könnte man zwar auch noch auf PChar umstellen, oder wenn man beim String bleiben will, dann ginge auch noch sowas ^^
Delphi-Quellcode:
UniqueString(S);
i := Pos('#', S);
While i > 0 do Begin
  PByte(@S[i])^ := Byte(',');
  i := PosEx('#', S, i + 1);
End;
Für PosEx gibt's ja 2 Versionen in der CodeLib, da es das erst seit D4 gibt.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat