Как я могу заменить символы \ xA0 (или не ASCII) в строке на ''? - PullRequest
1 голос
/ 01 октября 2010

У меня есть файл Excel с многочисленными не-ASCII символами, которые я хотел бы заменить на пробел.

Этот текст необходимо ввести в базу данных MySQL, и он не будет импортироваться с этими символами в строках. Я получаю HY000 Incorrect string value при попытке опубликовать строку.

1 Ответ

6 голосов
/ 01 октября 2010

Если набор символов не-Ascii фиксирован, вы можете использовать:

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

где # 1 # 4 - символы не ascii, которые вы хотите заменить.

Вот несколько документов по его использованию.

Вы тоже можете это сделать.

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;

Затем вы можете изменить Set в CharInSet на допустимые символы.

...