gpt4 book ai didi

c# - 当 Unicode 0xFFFD 在字符串中时 IndexOf 匹配 - 错误或功能?

转载 作者:太空狗 更新时间:2023-10-29 22:58:57 24 4
gpt4 key购买 nike

在VS2012的C#中如下代码:

string test = "[ " + (char)0xFFFD + " ]";
System.Console.WriteLine("{0}", test.IndexOf(" ") == 1);

结果为

True

打印到控制台输出窗口。空格由 0xFFFD 分隔,但它匹配两个连续的空格。这是预期的结果/功能还是(已知的)错误?

最佳答案

这是预期的结果。 FFFD是 Unicode 中的“替换字符”,在任何文化中都没有意义。 IndexOf在其搜索中忽略任何无意义的字符:

Character sets include ignorable characters, which are characters that are not considered when performing a linguistic or culture-sensitive comparison.

关于c# - 当 Unicode 0xFFFD 在字符串中时 IndexOf 匹配 - 错误或功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23770869/

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