for my $i (0 .. $#array) { substr($string, $i, 1) = lc substr($string, $i, 1) if $array[$i] eq q(); } #### $altered_string = join q(), map { my $char = substr($string, $_, 1); $array[$_] eq q() ? lc($char) : $char; } 0 .. length $string;