Unicode映射到语言

Dav*_*nes 2 mapping unicode encoding

这个问题可能是堆栈溢出的边界,所以如果它看起来过于偏离主题,我会提前道歉.我正在编写一个涉及多种语言的程序,我需要一个将语言映射到Unicode点的表.那些熟悉Unicode的人会知道字符被划分为"块",如拉丁语,西里尔语等.当然,大多数使用拉丁字符的语言不使用所有拉丁字符,大多数使用西里尔字符的语言都是不要使用所有的西里尔字符等.我感兴趣的是一个表格,只将英语映射到英语中使用的字符,西班牙语只用于西班牙语中使用的那些字符等.不需要涵盖世界上的每种语言(如这几乎是不可能的)但至少有一些比较常见的语言.(即便如此,这将是一个涉及多对多关系的相当广泛的表.)我不确定这样的表是否存在.(如果没有,我可以把它变成一个开源项目,因为它对我和其他人都非常有用.)

Juk*_*ela 7

CLDR是Unicode公共区域设置数据存储库,包含大量语言的字符集合的定义.该exemplarCharacters元素指定所需语言的单词的正常书写的字符.可以在By-Type Chart:misc.exemplarCharacters页面(通过编写系统分组)上看到此元素的当前定义,但是对于自动处理,您可能会发现XML文件更合适.exemplarCharacters-other元素当前包含标点符号的类似数据.

这可能是这类信息的最佳可用汇编,但它在概念上非常模糊(它并没有真正尝试定义用于编写语言的字符意味着什么),并且收集了不同语言的信息.一个开放但不包含一般质量控制的过程.

元素的含义在LDML规范第5.6条字符元素中定义.请注意描述" <characters>元素提供有关语言环境中常用字符的可选信息,以及有助于选择适合语言环境的资源或数据的信息,例如在通常用于传输数据的字符编码中进行选择时在语言环境的语言中."这是一个相当奇怪的观点,特别是在Unicode Consortium文档中,因为我们可以使用UTF-8,它涵盖了所有语言.但是还存在其他问题,其中有关语言中使用的字符的信息可能是有用的,例如选择文本字体,或初步检查输入数据,或设置OCR扫描参数或定义键盘设置.这些上下文可能需要对"语言中使用的字符"这一概念有不同的定义.