[mecab-users 235] Re: 分かち書きで、半角英数字部分を分かち書きしないようにしたい

Back to archive index

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




mecab-users メーリングリストの案内
Back to archive index