Perlについての質問箱 21箱目
■ このスレッドは過去ログ倉庫に格納されています
0507506
2006/01/10(火) 22:01:39foreach(@all_line) {
$line_ok_ng = &line_check($_);
#$line_ok_ngに沿って処理
}
sub line_check {
my $line_ok_ng = 'OK'; #始めはOK
my $each_line = $_[0]; #調査対象
my @ng_word = @other_file::ng_word;
my @ng_header = @other_file::ng_header;
foreach (@ng_word) {
$line_ok_ng = 'NG' if $each_line =~ /$_/;
}
foreach (@ng_header) {
$line_ok_ng = 'NG' if $each_line =~ /^$_/;
}
return($line_ok_ng);
}
#other_fileの中に@ng_word=("aaa", "bbb", "ccc")が記入してあります
やりたいことは実現出来たのですが、微妙に遅くなった気がします。
@all_lineは1万行弱なので、特に困りはしないのですが、上記のことを
もっと綺麗に実現するような方法、あるいは私が覚えておいた方が
良いような手法がありましたら、ぜひ御示唆いただけないでしょうか。
よろしくお願いします。
■ このスレッドは過去ログ倉庫に格納されています