Chasen (MeCab)では、ASCII 文字列も分かち書きで分解してしまい、kakasi と 分かち書きの結果が大きく異なってしまいます。 また、英文ドキュメントを日本語環境で処理した場合と、英語環境で処理 した場合で、文字列の分解方法が異なるため、インデックスに登録される 単語に違いがでてしまいます。
例えば、「httpd.confは設定ファイルです。」は、kakasi だと「httpd.conf は 設定 ファイル です 。」に分かち書きされ、ChaSen だと「httpd . conf は 設定 ファイル です 。」に、MeCab だと「httpd . conf は 設定 ファイル です 。」になります。
kakasi だと 「httpd.conf」という単語が登録されますが、ChaSen やMeCab では「httpd.conf」という単語は登録されません。このため、namazu で "httpd.conf" で検索しても見つかりません。
以上の Chasen 問題を Text::ChaSen, MeCab モジュールを使用した場合に限り修正しました。(とりあえず HEAD のみ)
参考)
[URL]
同様に以下の問題も解決すると思います。
[URL]
副作用として、ipadic-2.7.0 の chasenrc そのまま使うと、例えば、「httpd.confは設定ファイルです。」は、「h t t p d . c o n f は 設定 ファイル です 。」になるので、chasenrc に
(COMPOSIT_POS ((名詞 数))
((記号 アルファベット)))
を追加しなければなりませんでしたが、今回の修正でこの追加を行わなく てもよくなりました。
なお、chasen (mecab)コマンド呼び出しの場合は今回修正していません。
セコメントをする