プログラミング

今回は、linux上で【漢字かなまじり文をひらがな文やローマ字文に変換する方法】について説明します。

目標

– 漢字かなまじり文をひらがな文やローマ字文に変換する
– kakasiを使う

環境

Ubuntu Server 16.04

$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.2 LTS"

OS: 64bit

$ arch
x86_64

 実行準備

kakasiのインストール

漢字かなまじり文をひらがな文やローマ字文に変換するためのよく使われるライブラリの一つに、【kakasi】があります。
kakasiをインストールする手順は、以下になります。

1. ここからアーカイブファイルをダウンロードします。
2. ダウンロードしたアーカイブファイルを以下のコマンドで解凍します。

$ tar xvzf kakasi-2.3.6.tar.gz

3. 以下のコマンドを実行して、kakasiをインストールします。

$ cd kakasi-2.3.6
$ ./configure
$ make
$ su
# make install

インストール確認

以下のコマンドでkakasiのオプションが表示されれば、正常にインストールされています。

$ man kakasi
KAKASI(1)                   General Commands Manual                  KAKASI(1)

NAME
       KAKASI  -  Kanji  kana  simple  inverter  (between Kanji, both Kana and
       Romaji)

SYNOPSIS
       kakasi [options] [jisyo1 [jisyo2 [jisyo1,,]]]

DESCRIPTION
       KAKASI In Japanese sentences are often made up  a  mixture  of  Chinese
       characters (Kanji), Kana (Hiragana and Katakana) and Romaji (Latin pho‐
       netical pronunciation).  This program converts between these four  dif‐
       ferent ways of writing Japanese.

       This  program  is  useful  for those whose terminal or desktop does not
       support the native display of Japanese.  Also this is a great tool  for
       those  who  are  learning Japanese (international students and children
       etc).

                              (略)

 実行例

日本語を扱う場合は、基本的に以下のようにUTF-8を扱うためのオプションを利用します。

“-i utf-8 -o utf-8”

[漢字 → ひらがな]へ変換

“三重県”を”みえけん”に変換します。

$ echo "三重県" | kakasi -JH -KH  -i utf-8 -o utf-8
みえけん

[漢字 → ローマ字]へ変換

“三重県”を”mieken”に変換します。

$ echo "三重県" | kakasi -Ja  -i utf-8 -o utf-8
mieken

[ひらがな → ローマ字]へ変換

“みえけん”を”mieken”へ変換します。

$ echo "みえけん" | kakasi -Ha -Ka  -i utf-8 -o utf-8
mieken

[漢字かな交じり → ローマ字]

漢字かな交じり文をローマ字に変換します。
-Eaオプションをつけることで、”。”を”.”に変換しています。

$ echo "三重県のなばなの里。" | kakasi -Ja -Ha -Ka -Ea -i utf-8 -o utf-8
miekennonabananosato.

単語で区切りたい場合は”-s”オプションをつけます。

$ echo "三重県のなばなの里。" | kakasi -Ja -Ha -Ka -Ea -s -i utf-8 -o utf-8
mieken nonabanano sato .

[漢字かな交じり → ひらがな]

漢字かな交じり文をひらがな文に変換します。

$ echo "三重県のなばなの里。" | kakasi -JH -KH -s -i utf-8 -o utf-8
みえけん のなばなの さと 。

[漢字かな交じり → カタカナ]

漢字かな交じり文をカタカナ文に変換します。

$ echo "三重県のなばなの里。" | kakasi -JK -HK -s -i utf-8 -o utf-8
ミエケン ノナバナノ サト 。

まとめ

以上、kakasiを利用して、漢字かなまじり文をひらがな文やローマ字文に簡単に変換できます。