Cmecab-java
提供: やる気向上作戦
目次 |
何ですかこれは?
オープンソースの形態素解析エンジンMeCabを、JNIを通じてJavaから利用できるようにしたものです。
おまけとして、Lucene用のTokenizer, Analyzerと、Solr用のTokenizerFactoryも付属しています。
必要環境
- JDK 1.5以上
- !MeCab
ダウンロード
ライセンス
Public Domain
例
import net.moraleboost.mecab.Tagger;
import net.moraleboost.mecab.Node;
public class TestTagger {
public static void main(String[] args) throws Exception
{
// バージョン文字列を取得
System.out.println("MeCab version: " + Tagger.version());
System.out.println();
String text = "本日は晴天なり。";
System.out.println("Original text: " + text);
System.out.println();
System.out.println("Morphemes:");
// Taggerを構築。
// 第一引数には、MeCabの辞書の文字コードを与える。
// 第二引数には、MeCabのcreateTagger()関数に与える引数を与える。
Tagger tagger = new Tagger("Shift_JIS", "");
// tagger.parse()を呼び出して、文字列を形態素解析する。
// 返されるオブジェクトは、Iterator<String>を実装している。
Node node = tagger.parse(text);
// 一つずつ形態素をたどりながら、表層形と素性を出力
while (node.hasNext()) {
String surface = node.next();
String feature = node.feature();
System.out.println(surface + "\t" + feature);
}
}
} // end of class TestTagger
