在字符串上调用的IndexOf
函数返回-1
,但确实存在匹配项。
string sUpperName = "PROGRAMOZÁSI NYELVEK II. ADA EA+GY. (BSC 08 A)";
string sUpperSearchValue = "N";
sUpperName.IndexOf(sUpperSearchValue); // Returns -1
sUpperSearchValue = "NY";
sUpperName.IndexOf(sUpperSearchValue); // Returns 13
sUpperName[13]; // 78 'N'
sUpperSearchValue[0]; // 78 'N'
sUpperName[13] == sUpperSearchValue[0]; // true
你知道为什么它会自己找到"NY"
而不是"N"
吗?如果我在字符串中搜索每隔一个字母,它就能找到它,但不能找到"N"
。同样的问题也出现在小写字母上。
如果我在" NY"
中输入" N"
no match,它也会匹配。
控制台中的图片
发布于 2014-05-31 21:24:38
在匈牙利.NET文化中,字母组合"ny“代表一个单独的字母,因此在您的示例中没有"N”,只有"NY“。
https://stackoverflow.com/questions/23970521
复制相似问题