LoginSignup
2
4

More than 5 years have passed since last update.

mecabをpython2.7,ruby2.3,php7で使ってみた

Last updated at Posted at 2016-09-26
  • ubuntu 16.04.1

参考

インストール

sudo apt install -y \
  mecab mecab-ipadic-utf8

実行

mecabプロンプトにて文字入力しEnter押下
$ mecab
おなかすいた #Enter押下
結果
おなか   名詞,一般,*,*,*,*,おなか,オナカ,オナカ
すい  動詞,自立,*,*,五段・カ行イ音便,連用タ接続,すく,スイ,スイ
た 助動詞,*,*,*,特殊・タ,基本形,た,タ,タ
EOS

python2.7で実行

sudo apt install -y python-mecab
a.py
# coding: utf-8
import MeCab
mt = MeCab.Tagger("-Ochasen")
print mt.parse("おなかすいた")

python a.py

結果
おなか   オナカ   おなか   名詞-一般       
すい  スイ  すく  動詞-自立   五段・カ行イ音便    連用タ接続
た タ た 助動詞   特殊・タ    基本形
EOS

ruby2.3で実行

sudo apt install -y ruby-mecab
a.rb
require 'MeCab'
m = MeCab::Tagger.new ("-Ochasen")
print m.parse ("おなかすいた")

ruby a.rb

結果
おなか   オナカ   おなか   名詞-一般       
すい  スイ  すく  動詞-自立   五段・カ行イ音便    連用タ接続
た タ た 助動詞   特殊・タ    基本形
EOS

php7で実行

sudo apt install -y \
  php7.0-cli php7.0-dev libmecab-dev
git clone https://github.com/rsky/php-mecab.git
cd php-mecab
cd mecab
phpize
./configure --with-php-config=/usr/bin/php-config --with-mecab=/usr/bin/mecab-config
make
sudo make install
  • /usr/lib/php/20151012/mecab.soが入る。
extension登録
sudo sh -c "echo 'extension=mecab.so' > /etc/php/7.0/mods-available/mecab.ini"
sudo ln -s /etc/php/7.0/mods-available/mecab.ini /etc/php/7.0/cli/conf.d/20-mecab.ini
確認
$ php -i | grep -i mecab
/etc/php/7.0/cli/conf.d/20-mecab.ini,
mecab
MeCab Support => enabled
MeCab Library => 0.996 => 0.996
mecab.default_dicdir => no value => no value
mecab.default_rcfile => no value => no value
mecab.default_userdic => no value => no value
php7では書き方が違う
- $mecab = new MeCab_Tagger();
+ $mecab = new \MeCab\Tagger();

ようやく実行

a.php
<?php
$str = "おなかすいた";
$mecab = new \MeCab\Tagger(array('-O' => 'chasen'));
echo $mecab->parse($str) . PHP_EOL;

php a.php

結果
おなか   オナカ   おなか   名詞-一般       
すい  スイ  すく  動詞-自立   五段・カ行イ音便    連用タ接続
た タ た 助動詞   特殊・タ    基本形
EOS
2
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
4