use strict; use warnings; my $previous; while (my $line = <$handle>) { if (defined($previous) && $line =~ /BEEP/ ) { print $previous; } $previous = $line; }