Thanks. I modified the while loop to fit my purpose.
Sami Panula (aka Ron B)
Bob Showalter wrote:
Ron B wrote:
My problem is how to print the next line after the line that
includes BLAH. So I want to print lines including BLAH keyword and
when BLAH is found the next line after it.
#!/usr/bin/perl # print lines wich include BLAH keyword print "Content-type: text/html\n\n"; print "<html>\n"; print "<head>\n"; print "<title>av</title></head><BODY>\n"; open(HTMLOLD, "/.../.../pohja.html"); @lines=<HTMLOLD>; close(HTMLOLD); $count = 0; foreach $line (@lines) { if ($line =~ /BLAH */) { print "$line"; $count++; } if ($count eq 50){ last; } }
print "</body>\n"; print "</html>\n";
You could solve this by setting some kind of indicator when you find a BLAH, so the next pass through the loop would print the following line.
But don't do that. Instead of reading the lines into an array, process the lines directly in a while loop like this:
while (<HTMLOLD>) { if (/BLAH */) { print; # print this line $_ = <HTMLOLD>; # read following line print; # and print it } last if $. >= 50; }
-- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>