【发布时间】:2010-01-02 19:37:49
【问题描述】:
假设你只有二进制数据并且没有预装函数,是否有一种模式或算法来对字符类型进行分类?
【问题讨论】:
标签: string algorithm language-agnostic unicode character-properties
假设你只有二进制数据并且没有预装函数,是否有一种模式或算法来对字符类型进行分类?
【问题讨论】:
标签: string algorithm language-agnostic unicode character-properties
您要求 API 告诉您。在 Java 中,您使用 Character 类。在 C++ 中,您可以使用 ICU。如果您的语言没有此功能,请从 unicode.org 下载属性数据库并将其合并。
换句话说,没有模式或算法。 Unicode 联盟发布了包含这些信息的表格。
【讨论】:
不,没有模式。您将需要创建一些查找表。 (好吧,我想你可以用 ifs 的迷宫来做到这一点,但这不会很好。)
幸运的是,在大多数环境中 有一个预先设置好的 API 函数可以为您完成这项工作,因为构建字符类数据表非常无聊。
【讨论】:
我最近发布了我的 FOSS Unicode 转换器,我正在使用最新的 Unicode 字符数据库(附件 #44 - 包含 Unicode 5.2)
在这个 (XML) 数据库中,您可以搜索您请求的字符(十六进制代码)并查看它是数字还是您想要的任何字符。
您可以测试这个 atmy 项目,如果有用,您可以使用它的数据库
http://unicode.codeplex.com 是项目的主存储库。您可以在那里查看代码或获取可执行文件
【讨论】: