我正在尝试制作一个if语句,我想比较2个字符串,无论它们是否相等。
这就是我所拥有的
if vysledok.Equals(meno) then
Application.MessageBox('Zadane meno existuje, zadajte prosím iné meno','DUPLICITNÝ UŽÍVATEĽ',0)
else
...
然而,vysledok.Equals(meno)有下划线,它说:
'string' does not contain a member named 'Equals' at line ...
Type of expression must be BOOLEAN at line ...
我必须提到我是delphi的新手:) 谢谢你的建议
答案 0 :(得分:4)
在现代Delphi中,string
中定义的SysUtils
类型的帮助程序提供了Equals
方法。因此,在XE3或更高版本中,如果使用SysUtils
,则代码将编译。从中我们可以推测您使用的是旧版本的Delphi,或者没有使用SysUtils
。
在旧版本的Delphi中,您使用相等运算符来比较字符串:
if vysledok = meno then
实际上,Delphi字符串帮助器Equals
方法的实现只不过是使用这个等式运算符进行比较。
如果您想要不区分大小写的比较,请使用SameText()
:
if SameText(vysledok, meno) then
答案 1 :(得分:-1)
这也应该有效:
if AnsiUpperCase(vysledok) = AnsiUpperCase(meno) then