7/23(水) 掛川・晴

 お暑うございます。梅雨明け以来,ずーっと暑い日が続いている。こういう時には閉じこもっているに限る。ヒッキー体質のワシにはピッタリな気候ってことですな。
 ままごとみたいなサーチエンジンシステムに検索IF(PHP)を取り付けて,MeCabをかませて自然言語処理に見せかける処理を行っているのだが,Windows環境だと,popen関数を使ってコマンドラインから

echo $keyword | mecab

とやって$keywordに入ってい文字列をMeCabに渡すようにしている。PHPのMeCab用ライブラリは既にあるようだが,まあ今のところ,処理速度にあまり拘っていないのでこの程度で何とかなっている。
 ただ,echoはShift JISしかマトモに扱えないようで,UTF-8を処理するようにしてあるMeCabにUTF-8の$keywordをecho経由で渡すと一部文字化けを起こす(例えば「静岡県袋井市」を渡すと最後の「市」が分割されてしまう)。
 仕方がないので,Win32 binaryのnkfを拾ってきて,$keywordはShift JISに変換しておき

echo $keyword | nkf –utf8 | mecab

と3段構えで渡すようにするとうまくいった。・・・が,いくらなんでも能率が悪すぎるので,いずれは改善が必要となろう。
 明日は一コマ目から試験監督なのでもう寝ます。