namazu-ml(avocado)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Plan for Namazu next version
akira yamada <akira@xxxxxxxxxxx> wrote:
>S> my ($str) = @_;
>S> $str =~ s/^[ \t]+//m;
>S> $str =~ s/[\r\n]+/ /;
>S> $str =~ s/=\?ISO-2022-JP\?B\?(.*?)=\?=/decode_base64($1)/gei;
>S> &jcode::convert(*str,'euc');
>S> $str;
>S> }
>
>これだと長い文字列が MIME エンコードされた場合など
>エンコード文字列が適当に分割されているケースで
>問題になりませんかね?
うーむ。ちょっと問題ありますね。修正するとすれば
my ($str) = @_;
$str =~ s/^[ \t]+//mg;
$str =~ s/[\r\n]+//g;
$str =~ s/=\?ISO-2022-JP\?B\?(.*?)=\?=/decode_base64($1)/gei;
かな。あと、問題なのが
&jcode::convert(*str,'euc');
のように jcode.pl で直接コード変換しようとしても my 変数はだめみた
いなので、
$str = &jcode'euc($str, 'jis');
のように call & value で呼び出して使わないといけないみたいです。
さて、ここからが本題ですが、"nkf -Z1" のように JIS X0208 の英数字
記号を ASCII へ変換する方法はないものでしょうか。 "kakasi -Ea" と
いう手もあるのですが、 ChaSen も考えるとそうもいきません。 Perl で
できる良い方法があればご教示ください (JPerl は使わないで)。
--
高林 哲 Satoru Takabayashi