将CJK音译为拉丁语 - 最好是C ++语言

时间:2012-11-19 13:55:44

标签: c++ cjk icu transliteration

我正在尝试编写一个可以将CJK音译为拉丁语的程序(即拼音,罗马字等)。例如,您将中文,日文或韩文文档作为输入,然后将音译版本转换为拉丁文作为输出。

我是这个领域的新手,所以请在这里忍受。

显然,首先我需要检测语言的类型(中文,日文或韩文),然后再进一步了解。然后,据我所知,到目前为止,为了进行音译,我需要将文本分成单词,因为在这些语言中,单词之间没有空格。这称为word segmentation。最后找出我需要将它们音译成拉丁语的单词。

所以这是我的问题:

  1. 有许多(实际上并不是真的!更好的说有些)库进行音译工作,因为我正在寻找C / C ++中的开源库,我找到了Adson(仅适用于中文)和ICU4C。来自Adson didn't compile的克隆Git回购。我无法为ICU4C找到简单直接的教程。我怎样才能找到一些关于ICU4C使用的教程?你知道其他图书馆将CJK音译为拉丁语吗?如果准确率更高(~90%),我可以忘记它是用C ++编写的。

1 个答案:

答案 0 :(得分:1)

ICU:http://userguide.icu-project.org/transforms/general中有例子,ICU 50现在有CJK分词。 uconv示例可以与uconv -f utf-8 -t utf-8 -x 'Any-Latin'之类的内容一起使用,以进行任意拉丁变换。但是,这并没有考虑到语言。