如何将字符串中的\ xA0(或非ASCII)字符替换为''?

时间:2010-10-01 02:54:05

标签: delphi string non-ascii-characters

我有一个包含大量非ASCII字符的excel文件,我想用空格字符替换它。

此文本将输入MySQL数据库,并且不会在字符串中使用这些字符导入。我试图发布行时得到HY000 Incorrect string value

1 个答案:

答案 0 :(得分:6)

如果修复了非Ascii字符集,您可以使用:

NewString := StringReplace(OriginalString,#1#4,' ',[rfReplaceAll])

其中#1#4是您要替换的非ascii字符。

Here is some docs on it's use.

您也可以这样做。

function StripNonAlpha(aInput : String) : String;
var
 I : Integer;
begin
 result := aInput;
 for I := 1 to length(result) do
 begin
   if not CharInSet(result[I],['A'..'Z','a'..'z']) then
      result[I] := ' ';
 end;
end;

然后您可以将CharInSet中的Set更改为可接受的字符。