Tadamasa Teranishi
yw3t-****@asahi*****
2007年 2月 27日 (火) 23:57:47 JST
寺西です。 Tadamasa Teranishi wrote: > > そのため、例えば次のような前処理を含めて処理を行う必要があります。 > > $ echo -e "filename.jpg 1024バイト" | expand -4 | > mecab -F "%M\t" -U "%M\t" -E "\n" | perl -e 'my $text = <>; > while($text =~ s/([\x00-\x7f])\t([\x00-\x7f])/\1\2/sg){} > $text =~ s/\t/ /sg; print $text;' > > 「filename.jpg 1024バイト」 -> 「filename.jpg 1024 バイト」 > > ただし、テキストに含まれるタグは空白と同じものとして扱って良い場合 > に限ります。(タグを区別する場合はより複雑な前処理と後処理が必要) MeCab はそもそもタブを通しません(タブと空白を区別しない)でしたね。 なので、区切り記号にタブを使うと前処理なしで何とかなりそうです。 $ echo -e "filename.jpg 1024バイト" | mecab -F "%M\t" -U "%M\t" -E "\n" | perl -e 'my $text = <>; while($text =~ s/([\x00-\x7f])\t([\x00-\x7f])/\1\2/sg){} $text =~ s/\t/ /sg; print $text;' -- ===================================================================== 寺西 忠勝(TADAMASA TERANISHI) yw3t-****@asahi***** http://www.asahi-net.or.jp/~yw3t-trns/index.htm Key fingerprint = 474E 4D93 8E97 11F6 662D 8A42 17F5 52F4 10E7 D14E