goo*_*ate 37 c# unicode azure azure-table-storage
我是学习Unicode的新手,不知道我需要根据我的ASCII背景学到多少东西,但是我正在阅读C#规范中的标识符规则,以确定Azure表中允许使用哪些字符(这是直接基于C#规范).
我在哪里可以找到属于这些类别的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字符 Phi*_*oss 37
FileFormat.info按类别列出了Unicode字符:
http://www.fileformat.info/info/unicode/category/index.htm
Tim*_*mwi 37
您可以从官方Unicode数据文件以自动方式检索此信息,该文件UnicodeData.txt在此处发布:
这是一个在每行中以分号分隔的值的文件.第三列告诉你每个角色的角色类.
这样做的好处是你可以获得每个角色的角色名称,这样你就可以更好地了解角色的名称,而不仅仅是看角色本身(例如,你知道what是什么吗?这是对的,这是禁令.格鲁吉亚人.:-))
dtb*_*dtb 12
当然,您可以使用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);
}
Run Code Online (Sandbox Code Playgroud)
您可以在MSDN上找到Unicode类别及其短名称的列表,例如,"Ll"是UnicodeCategory.LowercaseLetter的缩写.
| 归档时间: |
|
| 查看次数: |
14555 次 |
| 最近记录: |