my $word = 'abracadabra'; my @list = qw( a b c d e ); my %list = map { $_ => 1 } @list; foreach (@list) { delete $list{$_} if $word =~ s/\Q$_//; } @list = keys %list; print("remaining word: ", $word, "\n"); # raaabra print("remaining list: ", @list, "\n"); # e