極悪です。
藤岡和夫 さんの Re: Error: Runtime exception on jperl 5.005_03 から
> -bを付けると取り敢えずテストデータでは問題がなくなりました(^^)vしばら
>く試してみます。しかし、anhttpdのCGIでjperlに-bのスイッチを付けるのはど
>うするんだろ・・・実行プログラムの入力欄に一応加えてみる・・・おーっ、動
jperl -b にするのが実行前に分かるなら最初から perl を起動
するわい、って気もしますが、スクリプトの頭に #!jperl -b で
も ok です。cmd.exe は何もしないけど jperl が解釈してくれ
ます。
あとは <description> くらいの長い文字列なら日本語の途中に
マッチすることはないだろうと考えて index を使うとか。
sub midstr{
my($str,$start,$end) = @_;
my $pos1 = index($str,$start);
return if $pos1 < 0;
$pos1 += length($start);
my $pos2 = index($str,$end,$pos1);
return if $pos2 < 0;
return substr($str,$pos1,$pos2-$pos1);
}
while(<>){
$_ = midstr($_,"<description>","</description>");
print $_,"\n" if defined $_;
}
#残念ながら index/substr を使っても速度的なメリットはなかっ
#たです。正規表現でわしづかみに処理するほうが簡単だし十分速
#かったりする。
--
極悪, FZH01112 at nifty.com
http://hpcgi1.nifty.com/dune/gwiki.pl?