Character encoding 字符编码与字符编码的区别

Character encoding 字符编码与字符编码的区别,character-encoding,special-characters,Character Encoding,Special Characters,我正在构建一个CAML查询,我的一些值 &,在U2U CAML Builder中翻译为& 但是,当我尝试匹配列表中的项目时,它失败了 当我将&输入valeus时,它转换为& 和之间有什么区别?在代码vb.net中,我应该如何解释这种差异?字符是Unicode U+0026&​ 符号38十进制,HTML:&38&;,这是从ASCII中的相同值继承的。除此之外,Unicode还有以下变体: * U+FE60 ﹠​ small ampersand (HTML: ﹠ ) *

我正在构建一个CAML查询,我的一些值

&,在U2U CAML Builder中翻译为&

但是,当我尝试匹配列表中的项目时,它失败了

当我将&输入valeus时,它转换为&


和之间有什么区别?在代码vb.net中,我应该如何解释这种差异?

字符是Unicode U+0026&​ 符号38十进制,HTML:&38&;,这是从ASCII中的相同值继承的。除此之外,Unicode还有以下变体:

* U+FE60 ﹠​ small ampersand (HTML: ﹠ )
* U+FF06 &​ fullwidth ampersand (HTML: & in block Halfwidth and Fullwidth Forms)
* U+214B ⅋​ inverted ampersand (HTML: ⅋ )
信息:

更多信息:


我希望它能对你有所帮助

正如其他人所指出的,&是一个全宽的符号,而,&只是一个普通的符号。Unicode数据库声明这些字符是兼容的,这意味着如果您将&和&转换为NFKD标准格式,您将得到相同的结果。如果您希望将&和&视为同一个字符,也许您可以找到一个将字符串转换为NFKD的函数。

我现在也遇到了同样的问题,经过一点研究,我发现SharePoint使用符号和&作为全宽符号和unicode保存分类法值。 您可以使用TaxonomyItem.NormalizeName和see转换搜索查询值,反之亦然,使用string.NormalizeSee转换搜索查询值

您可以在此处找到一篇关于SharePoint ampersands的好文章:


&=Unicode字符“全宽和”U+FF06