我需要用一个变量中的字符串替换文本文件中的整行。我对代码的尝试如下,但我什么都没得到。什么遗失?
my @a;
$ldir= "/project/";
$RESULTS_FILE = $ldir.'/'.'out.html';
open OUT, "<", $RESULTS_FILE or die "Could not open results file:$!";
while ($ln=<OUT>)
{
chomp($ln);
for my $str (@stream_name)
{
if ( $ln =~ m/$str/ )
{
$str =~ s/(.)/$1: NOT-RUN/g;
}
}
push @a, $str;
#push @a, $ln;
}
open F, ">results.html" || die "$!";
print "\n\n\nContents of Array is:@a\n\n\n";
for my $e (@a)
{
print F "$e\n";
}
close F;
答案 0 :(得分:0)
这一行:
push @a, $str;
在for
循环之外。你应该use strict
,这样才能抓住这些错误,你不必为此付出太多的代价。