【Perl】初心者コーナー Part15
■ このスレッドは過去ログ倉庫に格納されています
0057nobodyさん
02/08/10 03:15ID:???とりあえず、(cedilはいらんだろう)
$value=~s/([\+&"<>])/$1 eq '+' ? ' ' : '&'.{qw(& amp " quot < lt > gt)}->{$1}/eg;
無名ハッシュと+を外に出せばそこそこ速くなるんじゃ無いだろか?
%slist=qw(& amp " quot < lt > gt);
$value=~tr/+/ /;
$value=~ s/([@{[join '', keys %slist]}])/'&'.$slist{$1}/eg;
か、もっと素直に、
$value=~s/$_/'&'.$slist{$_}/eg for keys %slist;
どっちにしろ>>49のままの方が速いだろうが、、
んで最終的にはこれを勧めておく。
use HTML::Entities;
$value=~tr/+/ /;
encode_entities($value,'"<>&');
■ このスレッドは過去ログ倉庫に格納されています