in reply to Basic help with mapping

I'm not sure if it's a typo or not, but your missing the "-" in the map statements.

Also, in the first "try mapping" statement you're trying to use the hash as the array index. The map statement iterates over the items in the array, which are hash references. So the second map statement is the correct usage.

The map statement returns only the number of elements in scalar context, so you would want to use "my @AoH_new = ". And the result of the substitution is 1 so you would get an array of three 1's unless you return the value of $_;

So you end up with:
my @AoH_new = map { $_->{'title'} =~ s/-/_/g; $_ } @$AoH_orig;

HTH, Steve