今天发现Perl中原来还有个while-continue这样的循环。其功能是除了在while中进行last语句外,每走一次while循环,再执行
紧接其后的continue语句,甚至包括next语句。并且在while(),括号中的变量是可以在continue中继续使用的,当然也包括$_。比如:
my tempfile=“tmp.$”;#后缀是进城ID
open (TMP,”> tempfile")ordie("die:!”);
open (INPUT,”< megaliths.dat”) or die(“die:$!”);
while (my line = ) {
#在continue中是undef
mywhile = “above”;
#根据预设的正则进行过滤,以缩小进一步修改的范围
next unless $line =~ //Q$some_pattern/;#/Q把特殊的正则元字符一般化
$line .= " append";
}
continue{
#即使在next语句后,continue仍然执行
print TMP “In continue line/n”;print“[while]/n”;
}
close(TMP);
close(INPUT);
open A ,”