c# - 如何识别零宽字符?

标签 c# visual-studio-2015

Visual Studio 2015 在我的代码中发现了意外字符(错误 CS1056)

如何识别字符是什么?这是一个零宽度字符,所以我看不到它。我想确切地知道它是什么,这样我就可以找出它的来源以及如何通过查找和替换来修复它(我有很多类似的错误)。

这是一个例子。在下面的引用中,x 和 y 之间有一个零宽度字符:

x​y

如果只是告诉我示例中角色的名字会很有帮助,但我也想知道如何自己识别角色。

最佳答案

我会一点 Javascript embedded within my explanation of Unicode它允许您查看复制/粘贴到文本框中的 Unicode 字符。您的示例如下所示:

Unicode explorer

这里可以看到字符是U+200B。只需搜索它通常会带您到 http://www.fileformat.info , 在这种情况下 this page它可以为您提供角色的详细信息。

如果您在应用程序中拥有自己的字符,Char.GetUnicodeCategory 是您的 friend 。 (奇怪的是,据我所知,没有用于非 BMP 字符的 Char.GetUnicodeCategory(int)...)

关于c# - 如何识别零宽字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32371442/

相关文章:

c# - 在输入 Umbraco 站点的 URL 时添加正斜杠

c# - Itextsharp : Adjust 2 elements on exactly one page

C# Telnet 实现与 TCPClient,用户名/密码错误

Javascript 不是从 Typescript 生成的

c# - Any()的多重枚举和使用

c# - sublime text 2 中的切换注释不适用于 .cs 文件

c# - 迭代所有 'select' 元素并在 Selenium 中获取它们的所有值

visual-studio - Visual Studio 2015 (ASP.NET 5) : show 'Manage Bower Packages...' context menu

visual-studio-2015 - 如何抑制某些文件的智能感知错误?

c++ - 当我调用 std::abort() 时,未显示 cout