#!/usr/bin/perl use strict; use warnings; #use Data::Dumper; while (my $i=) { # if (/Error/ .. /NAME2/) { # print if /Error/ or /NAME1/ or /NAME2/; foreach ($i) { if ($_ =~ /Error/ or /NAME1/ or /NAME2/){print $_;} #if ($_ =~ /Error/) and ($_=~/NAME1/) and ($_=~/NAME2/){print $_;} } } __DATA__ blabla blabla Error bla dieter bla NAME1 blabla blob kurt blub NAME2 bla blib ___________________ blabla blabla peter bla NAME1 blabla ursula blub NAME2 bla blib ___________________ blabla blabla Error bla heinz bla NAME1 blabla fred blub NAME2 bla blib