我在哪里可以得到一个Unicode字符的类列表?

我是学习Unicode的新手,不知道我需要学习多less基于我的ASCII背景,但我正在阅读规则标识符的C#规范,以确定什么字符是允许的Azure表 (直接基于C#规范)。

我在哪里可以find属于这些类别的Unicode字符列表:

  • letter-character :类Lu,Ll,Lt,Lm,Lo或Nl的Unicode字符
  • combining-character :Mn或Mc类的Unicode字符
  • decimal-digit-character :类Nd的Unicode字符
  • connecting-character :类Pc的Unicode字符
  • formatting-character :类Cf的Unicode字符

您可以从官方Unicode数据文件UnicodeData.txt中以自动方式检索此信息,该数据文件在此处发布:

  • UnicodeData.txt(在unicode.org)

这是每行中以分号分隔的文件。 第三列告诉你每个字符的字符类。

这样做的好处是你可以得到每个angular色的angular色名字,所以你比看angular色本身更好的了解它(比如你会知道什么是?)是的,这是禁令。格鲁吉亚。 :-)

FileFormat.info按类别有一个Unicode字符列表:

http://www.fileformat.info/info/unicode/category/index.htm

您当然可以使用LINQ:

 var charInfo = Enumerable.Range(0, 0x110000) .Where(x => x < 0x00d800 || x > 0x00dfff) .Select(char.ConvertFromUtf32) .GroupBy(s => char.GetUnicodeCategory(s, 0)) .ToDictionary(g => g.Key); foreach (var ch in charInfo[UnicodeCategory.LowercaseLetter]) { Console.Write(ch); } 

您可以在MSDN上findUnicode类别及其短名称的列表,例如,“Ll”是UnicodeCategory.LowercaseLetter的缩写 。

在ANTLR词法分析器中,您可以使用方便的范围格式查找Unicode字符集(LU,LL,LT,LM和LO)。

最简单的方法是在菜单编辑→特殊字符下popup对话框,其中包含所有Unicode字符。

这适用于Mac; 我还没有尝试Windows。

https://www.compart.com/en/unicode/category是一个非常有用和易于浏览的网站浏览类别。; 它是可search的,并列出了相当多的单个Unicode字符的信息。