next up previous
Next: 1.4 Namazu の紹介 Up: 1 日本語文書における検索 Previous: 1.2 grep の問題点

1.3 どうすればいいか?

このうち文字コードの問題だけは比較的簡単に解決できる 6。 日本語 EUC でも ISO-2022JP でも、 日本語データとしては同じと見なすような grep を作れば良い。 例えば、成田多良氏の 作成した lgrep (http://www.ff.iij4u.or.jp/~nrt/lv/ から 入手した) は、 この条件 (実はそれ以上の条件を満たしている 素晴らしいソフトウェアである) を満たす。

[
l]grep は EUC しか検索できない, lgrep は何でも OK
isc-xas06% source ~re00018/syori2rc ← 桂田の用意したコマンドを利用できるようにする 7
isc-xas06% cd ~re00018/nihongo-text ← サンプル・データのあるディレクトリィに移動する。
isc-xas06% ls
euc.txt    jis.txt    sjis.txt → 3 つテキスト・ファイルがある。
isc-xas06% nkc * ← 各ファイルの文字コードを調べる (結果は省略する)
isc-xas06% cat euc.txt
桂田祐史
弁慶がな
ぎなたを
isc-xas06% grep 桂田 *
euc.txt:桂田祐史 → EUC のテキストしか検索できていない。
isc-xas06% lgrep 桂田 *
euc.txt:桂田祐史
jis.txt:桂田祐史
sjis.txt:桂田祐史 → lgrep なら三つとも検索に成功する。
isc-xas06% grep なぎなた * ← これはうまく行かない。

しかし、たとえ、 そういう (文字コードの問題を解決した) grep を作ったとしても、 (1) の問題は残ったままである。 これは日本語の文書を処理するには、 grep という made in USA の (行単位で検索する) ソフトはもうあきらめて、 日本語文書のためのソフトを作るべきだ、ということだろう (少し飛躍の ある主張?)。


next up previous
Next: 1.4 Namazu の紹介 Up: 1 日本語文書における検索 Previous: 1.2 grep の問題点
Masashi Katsurada
平成20年10月18日