【Java】 漢字からカタカナを取得する [3] ~ lucene-gosen編 ~

はじめに

http://blogs.yahoo.co.jp/dk521123/36627267.html
のつづき。[4] lucene-gosen を使用する。

準備

https://code.google.com/archive/p/lucene-gosen/downloads
でJARファイル(今回は「lucene-gosen-4.6.0-ipadic.jar」)をダウンロードし、インポートするだけ。
使いやすい!

サンプル

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

import net.java.sen.SenFactory;
import net.java.sen.StringTagger;
import net.java.sen.dictionary.Token;

public class Main {

  public static void main(String[] args) throws IOException {
    System.out.println(toKana("山田 孝雄"));
    System.out.println(toKana("鈴木 崇"));
    System.out.println(toKana("斎藤 孝之"));
    System.out.println(toKana("渡辺 麻子"));
  }

  public static String toKana(String targetValue) throws IOException {
    StringTagger tagger = SenFactory.getStringTagger(null);
    List<Token> tokens = tagger.analyze(targetValue, new ArrayList<Token>());

    StringBuilder returnValue = new StringBuilder();
    for (Token token : tokens) {
      returnValue.append(token.getMorpheme().getReadings().get(0));
    }

    return returnValue.toString();
  }
}


関連記事

漢字からカタカナを取得する [1] ~ 日本語形態素解析ライブラリ 基本編 ~

http://blogs.yahoo.co.jp/dk521123/36627267.html

漢字からカタカナを取得する [2] ~ kuromoji編 ~

http://blogs.yahoo.co.jp/dk521123/36627316.html

漢字からカタカナを取得する [3] ~ lucene-gosen編 ~

http://blogs.yahoo.co.jp/dk521123/36627324.html

Java】 文字列の類似度・レーベンシュタイン距離/ジャロ・ウィンクラー距離 ~ Apache Lucene

http://blogs.yahoo.co.jp/dk521123/36655532.html