ContainsStr是否与unicode字符串等效?

时间:2013-03-10 18:57:55

标签: string delphi unicode delphi-2009

今天我在我们的代码中修正了一些警告,其中一个是{em>“W1058 ContainsStr函数中隐含的字符串强制转换,潜在的数据丢失从'string'到'AnsiString'” 。

在搜索了一段相当于这个函数的函数之后,这个函数以两个unicode字符串作为参数,我决定在这里问一下。我期望找到类似ContainsWideStr(适用于Delphi 2007及更低版本)或ContainsUnicodeStr(适用于Delphi 2009+)的内容,但我找不到其中任何内容。

我知道我可以自己做这样的事情:

function ContainsUnicodeStr(const AText, ASubText: String): Boolean;
begin
  Result := Pos(ASubText, AText) > 0;
end;

但是,我想避免重复已经在Delphi中的代码,但我根本不知道在哪里。

1 个答案:

答案 0 :(得分:4)

根据文档,StrUtils.ContainsStr适用于Unicode。但当然,AnsiStrings.ContainsStr没有。