ich frag mich sowieso wieso ein Set of WideChar nicht geht ... wären doch nur 8 KB, aber da eh nicht alle
Unicode nutzen und man ja nicht unbedingt alles auf
Unicode umbrechen muß ...
so wäre es dann unicodetauglich und es würden alle Zeichen entfernt, welche in BadChars dinn sind und nicht in
ANSI reinpassen, egal welche Codierung
ANSI hatt
Delphi-Quellcode:
procedure FilterText(var Text: String; const BadChars: TSysCharSet);
var
i: Integer;
begin
for i := Length(Text) downto 1 do
if (Text[i] in BadChars) or not (Text[i] in [#$0000..#$00FF]) then
Delete(Text, i, 1);
end;
// bzw.
procedure FilterText(var Text: String; const BadChars: TSysCharSet);
var
i: Integer;
begin
for i := Length(Text) downto 1 do
if (Text[i] in BadChars) or (Text[i] > #$00FF) then
Delete(Text, i, 1);
end;
eigentlich müßte Ersteres eher stimmen, aber es scheint mit Letzterem übereinzustimmen ... schon eigenartig
[add]
so sollte es dann keine Wiedersprüche geben
Delphi-Quellcode:
procedure FilterText(var Text: String; BadChars: TSysCharSet);
var
i: Integer;
begin
BadChars := [#$0000..#$00FF] - BadChars;
for i := Length(Text) downto 1 do
if not (Text[i] in BadChars) then
Delete(Text, i, 1);
end;