my @out; for my $i (@in) { my $delete = 0; for my $d (@dels) { if (matches($i, $d)) { $delete = 1; last; } } push @out, $i if !$delete; }