#change: foreach my $wild (@wilds) { if ($find !~ m/$wild<\/font>/; } } #to use strict; use warnings; my $find = q/some text to change x it x up/; my @wilds = qw(x e o x); my %seen_it = (); my @good_wilds = grep(!$seen_it{$_}++, @wilds); my $wild = join("", @good_wilds); $find =~ s/([$wild])/$1<\/font>/g; print "$find\n";