my @words = qw(foo bar baz quux Ovid); my @exclude = qw(bar Ovid); my %bad_words; @bad_words{@exclude} = @words[@exclude]; @words = grep { ! exists $bad_words{$_} } @words;