Как заменить символ Unicode в строке? - PullRequest
0 голосов
/ 23 сентября 2018

Мне нужно заменить буквальный символ UNICODE на "нормальный" символ в строке:

HTMLString := StringReplace(HTMLString, '??', '->', [rfReplaceAll]);

Но я не могу ввести этот символ Unicode в редакторе кода Delphi из-заредактор кода Delphi не может отобразить этот символ Unicode.

Я ясно вижу, что вышеуказанный символ Unicode находится внутри строки, потому что когда я отправляю строку с CodeSite, я вижу его в CodeSite Live Viewer:

CodeSite.Send('HTMLString', HTMLString);

Это скриншот из CodeSite Live Viewer:

enter image description here

Так как я могу заменить этот символ Unicode встрока?

Delphi: 10,1 Берлин

1 Ответ

0 голосов
/ 23 сентября 2018

Поддержка Delphi IDE Unicode начиная с V2009, просто щелкните правой кнопкой мыши в редакторе кода и перейдите на File Format, затем выберите UTF8, и вот простой пример замены символа Юникода:

procedure TForm1.FormCreate(Sender: TObject);
Var
 S: Char;
 Str: string;
begin
  S:= chr($25b6); // Or S:= chr(9654);
  Str:= S + 'Hi there' + S;
  Caption:= Str + ' ---> ' + StringReplace(Str, S, '', [rfReplaceAll]);
end;

Среди множества новых функций, обнаруженных в Delphi 2009, - использование Unicode во всем продукте.Строка по умолчанию в Delphi теперь является строкой на основе Unicode.Поскольку Delphi в значительной степени построен на Delphi, IDE, компилятор, RTL и VCL полностью поддерживают Unicode.

Чтобы прочитать всю статью: http://edn.embarcadero.com/article/38437

...