![]() |
Re: Zeichen in einem String ersetzen???
Wenns wirklich total auf Speed ankommt müsst man auch statt
Delphi-Quellcode:
verwenden können... Ord() is ja nix anderes als ein Typecast auf Byte :gruebel:
s[i] = '#'
//lieber not Boolean(Ord(s[i]) xor Ord('#')) |
Re: Zeichen in einem String ersetzen???
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:
Das könnte man zwar auch noch auf PChar umstellen, oder wenn man beim String bleiben will, dann ginge auch noch sowas ^^
i := Pos('#', S);
While i > 0 do Begin S[i] := ','; i := PosEx('#', S, i + 1); End;
Delphi-Quellcode:
Für PosEx gibt's ja 2 Versionen in der CodeLib, da es das erst seit D4 gibt.
UniqueString(S);
i := Pos('#', S); While i > 0 do Begin PByte(@S[i])^ := Byte(','); i := PosEx('#', S, i + 1); End; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:26 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz