my $line= <>; while( defined $line ) { my $message= ''; do { $message .= $line; } while( defined( $line= <> ) && $line !~ /^\d{4}-\d\d-\d\d / ); print $message if( $message =~ /keyword/ ); }