Perlについての質問箱 34箱目
■ このスレッドは過去ログ倉庫に格納されています
0180デフォルトの名無しさん
2008/01/26(土) 21:26:32値を取り込むプログラムを作りたいです。
====
AAA
BBB
CCC
……
====
my @prohibit = ('XXX', 'YYY', 'ZZZ');
my @keep;
if ($_ !~ /$prohibit[0]/ && $_ !~ /$prohibit[1]/ && $_ !~ /$prohibit[2]/ ) {
push @keep, $_;
}
とすればまあできるんですが、
my @prohibit に禁止文字の追加や削除をしたときに困ってしまいます。
if ($_ !~ /@prohibit/ ) はエラーになります。
下の $ifif を作っても if 文が中身を把握してくれません。どのようにすればよいでしょうか?
my $ifif;
foreach my $i (0 .. $#{@prohibit}) {
$ifif = $ifif . sprintf " \$prohibit\[$i\] =\~ \/\^%s\/ \&\&", $prohibit[$i];
}
$ifif = $ifif . ' 0 == 0';
■ このスレッドは過去ログ倉庫に格納されています