c# – String.Compare()与匈牙利CultureInfo工作不正确的特定字符串

c# – String.Compare()与匈牙利CultureInfo工作不正确的特定字符串,第1张

概述String.Compare()与匈牙利CultureInfo工作不正确的特定字符串: if (0 == String.Compare(@"ny", @"nY", true, new CultureInfo("hu-HU"))) Console.WriteLine("Equal");else Console.WriteLine("Not equal"); 当然我想要得到“平等”答案,但事 String.Compare()与匈牙利CultureInfo工作不正确的特定字符串:
if (0 == String.Compare(@"ny",@"nY",true,new CultureInfo("hu-HU")))  Console.Writeline("Equal");else  Console.Writeline("Not equal");
@H_419_4@当然我想要得到“平等”答案,但事实并非如此.
如果我更改字符串它正常工作(例如“abc”和“ABC”它打印“等于”)
这似乎是特定符号的问题.

解决方法 你会期待什么?在匈牙利语中,“ny”被认为是一个字母.它可以写成“ny”,“Ny”或“NY”.但从来没有“nY”.这按预期工作:
var hu = new CultureInfo("hu-HU");  Console.Writeline(String.Compare("Ny","NY",hu));  Console.Writeline(String.Compare("ny","Ny",hu));
@H_419_4@在匈牙利语中,除了外来词和一些名字外,他们没有字母“y”.但是当你说“nY”时,这不可能是“ny”字母.所以也许.NET将它视为两个字母.

@H_419_4@有谁知道匈牙利语吗?听到他们的意见可能很有意思.但我很确定字符串“nY”永远不会出现在“自然”匈牙利语中.

总结

以上是内存溢出为你收集整理的c# – String.Compare()与匈牙利CultureInfo工作不正确的特定字符串全部内容,希望文章能够帮你解决c# – String.Compare()与匈牙利CultureInfo工作不正确的特定字符串所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1246298.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存