my $flag = 0; foreach my $line( @lines ){ $flag = 1 if $line =~ m/\[foo\]/; $flag = 0 if $line =~ m/\[foo2\]/; print $line if $flag; }