如何让NMecab输出romaji?

时间:2014-05-14 14:42:04

标签: c# .net nlp translation text-analysis

我正在使用a .NET port of Mecab (called NMecab)尝试将日语平假名,片假名和汉字解析为罗马字。

这是我的代码:

using NMeCab;    
MeCabTagger _tagger;

public string Parse(string input)
{
    _tagger = MeCabTagger.Create();
    _tagger.OutPutFormatType = "lattice";
    _tagger.LatticeLevel = MeCabLatticeLevel.Two;


    var output = _tagger.Parse(input);

    return output;
}

当我使用以下日文文本呼叫Parse(input)时:“ども”

我得到了输出:“ども助词,接続助词,,ども,ドモ,ドモEOS”

我正在寻找“ども”的罗马字,这将是“domo”。

我尝试将Mecab直接用作discussed in this SO answer,但获得相同的输出。

1 个答案:

答案 0 :(得分:2)

据我所知,MeCab(IPA,Jumandic或Unidic)使用的词典都不包括单词的romaji转录。实际上没有必要:

  1. 存在不同的转录方案(例如Hepburn,kunrei,99 siki);

  2. 有关词汇单位发音的信息已经公布(例如ドモ)。

  3. 您必须编写自己的转录程序...或寻找现有的片假名 - 罗马基转录模块(与您的转录方案兼容)......