gpt4 book ai didi

delphi - CharInSet 不适用于非英文字母?

转载 作者:行者123 更新时间:2023-12-03 14:35:54 25 4
gpt4 key购买 nike

我已将应用程序从 Delphi 2007 更新到 Delphi 2010,一切都很顺利,除了一条编译正常但无法正常工作的语句:

If Edit1.Text[1] in ['S','س'] then 
ShowMessage('Found')
else
ShowMessage('Not Found')

但是我知道in不会,所以改成了CharInSet

If CharinSet(Edit1.Text[1],['S','س']) then
ShowMessage('Found')
else
ShowMessage('Not Found')

但当字符串为 S 时,它从未起作用,但始终与 S 一起工作,即使我转换了 edt1.Text 1使用 AnsiChar 时,它始终无法使用阿拉伯字母。

我做错了什么,或者这不是 CharInSet 的工作方式?或者这是 CharinSet 中的错误?

更新:

我的好 friend Issam Ali提出了另一种解决方案,效果很好:

  If CharinSet(AnsiString(edt1.Text)[1],['S','س']) then

最佳答案

CharInSet 对于 255 以上的字符没有用。在您的情况下,您应该使用

  case C of
'S','س' : ShowMessage('Found');
end;

关于delphi - CharInSet 不适用于非英文字母?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4237339/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com