[Date Prev][Date Next][Thread Prev][Thread Next] [Search] [Date Index] [Thread Index]

[MacPerl] Matching the Next Line(s)



How would I go about matching a string in a line, then returning both 
that line and the next 2 lines?

I'm happy with the basic match, it's getting it to return the next 
line(s) that's got me stumped:

--
#! /usr/bin/perl -w

use strict;

my $file = 'text.txt';
my $string = 'hello world';
my ($matches, $line);

open(IN, $file)
     or die("Could not open $file: $!\n");

while($line = <IN>) {
     if ($line =~ /$string/gi) {
	$matches .= $line . '\n'; # and the next 2 lines if there are any
     }
}

close(IN);

if ($matches) {
     print "$matches\n";
} else {
     print "No matches to $match were found in $file";
}
--

Any ideas?
-- 
My brain hurts!
SeanC
                      Mediatek Training Institute
            129 Moore Road, Berea, Durban, South Africa
    phone: +27 (0)31 305 4200              SeanC@mediatek.co.za
      fax: +27 (0)31 305 4236
                   <http://members.xoom.com/s_carte>

# ===== Want to unsubscribe from this list?
# ===== Send mail with body "unsubscribe" to macperl-request@macperl.org