http://www.perlmonks.org?node_id=1055327

cmv has asked for the wisdom of the Perl Monks concerning the following question:

Hi Monks-

I don't quite understand why this one is so hard for me to figure out - please help!

This code:

use warnings; use strict; use Data::Dumper; my @CELLS=( 'A-1', 'A-2', 'A-3', 'A-4', 'B-5', 'B-6', 'C-7', 'C-8'); my %hash=map { /^(.*)-(\d+)$/; $1=>$2} @CELLS; print STDERR "hash DUMPER:\n", Dumper(\%hash), "\n";
Generates a Hash whose key is the alphabetical letter found before the dash, and whose value is the last numerical digit found for that letter
hash DUMPER: $VAR1 = { 'A' => '4', 'C' => '8', 'B' => '6' };
How can I change the map command so that it will generate a list of all the numerical digits found? Something like this:
hash DUMPER: $VAR1 = { 'A' => [ 1, 2, 3, 4 ], 'C' => [ 7, 8 ], 'B' => [ 5, 6 ] };

Thanks

-Craig