my @pcov = ('foobar','bilbao','bobo'); my @realassert = map {quotemeta} ('foo','ba'); my $re_one = join '|',@realassert; #print $re_one; my @result_one = grep { /$re_one/ } @pcov; print "one: @result_one\n"; my @result_all = grep { my $item = $_; ! grep { $item !~ /$_/ } @realassert; } @pcov; print "all: @result_all\n"; __END__ one: foobar bilbao all: foobar