查找 unicodechar 在 unicodestring 中的位置

Find the position of a unicodechar in a unicodestring

我正在使用 Unicode。我想在 UnicodeString 中找到一个字符的位置。

例如:álùáxõ中的位置是3.

我试了好几种方法,Google试了很多,看了Lazarus的文档,还是不行。

我正在使用 Lazarus 1.6 和 FPC 3.x。

像 David 所说的那样使用 pos(),但为了避免重载问题,请确保两个参数都显式键入 unicode*

例如将其复制并粘贴到记事本中,并使用 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.