我正在使用Unicode。我想在UnicodeString中找到char的位置。
例如:á
中lùáxõ
的位置为3。
我已经尝试了几种方法,谷歌很多,阅读Lazarus文档,但仍然无效。
我正在使用Lazarus 1.6和FPC 3.x。
答案 0 :(得分:3)
像David所说的那样使用pos(),但为了避免重载问题,请确保两个参数都是明确键入的unicode *
E.g。将其复制并粘贴到记事本中,然后使用 utf-8 编码
保存{$mode delphi}
{$codepage utf8} // source encoding is utf8, just in case.
var c : unicodechar;
s : unicodestring;
i : Integer;
begin
s:='lùáxõ';
c:='á'; // or whatever codepoint value of the char is.
i:=pos(c,s);
writeln(i);
end.