On Fri, May 13, 2011 at 4:30 PM, Rob Coops <rco...@gmail.com> wrote: > It might not look nice but I would do the following: > #!/usr/local/bin/perl > use strict; > use warnings; > my $arrayref = [ [ [ 'user1', 'c'], [ 'user2', 'a'], [ 'user2', 'b' ],[ > 'user2', 'd' ],[ 'user3', 'a' ],[ 'user2', 'f' ] ] ]; > my %hash; > foreach my $arrayreference ( @{${$arrayref}[0]} ) { > if ( ! defined $hash{${$arrayreference}[0]} ) { > $hash{${$arrayreference}[0]} = { group => [ ${$arrayreference}[1] ] }; > } else { > push @{${$hash{${$arrayreference}[0]}}{group}}, ${$arrayreference}[1]; > } > } > use Data::Dumper; > print Dumper %hash; > It prints: > $ perl test.pl > $VAR1 = 'user1'; > $VAR2 = { > 'group' => [ > 'c' > ] > }; > $VAR3 = 'user3'; > $VAR4 = { > 'group' => [ > 'a' > ] > }; > $VAR5 = 'user2'; > $VAR6 = { > 'group' => [ > 'a', > 'b', > 'd', > 'f' > ] > }; > Which is I believe what you are after right?
thanks a lot this seem to have worked -- Regards Agnello D'souza -- To unsubscribe, e-mail: beginners-unsubscr...@perl.org For additional commands, e-mail: beginners-h...@perl.org http://learn.perl.org/