in reply to multiple values for one key in hash
How about using a reference to an array. Here's a little ditty that builds the kind of hash for which you're looking and then prints out the results:
use strict; use warnings; use diagnostics; use Data::Dumper; my %hash; my $key; my $value; my @data = ("foo",1, "bar",2, "foo",3, "baz",4); while ($key = shift (@data)) { $value = shift (@data); # push the value on the array push @{$hash{$key}}, $value; } print Dumper \%hash;
Note: you have to create the anonymous reference -- you can't just push a value if the key doesn't exist.
Update: apparently you can just push the value.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: multiple values for one key in hash
by moritz (Cardinal) on May 12, 2008 at 22:12 UTC | |
by wade (Pilgrim) on May 12, 2008 at 22:46 UTC | |
by dragonchild (Archbishop) on May 12, 2008 at 23:04 UTC | |
by Fletch (Bishop) on May 13, 2008 at 01:55 UTC | |
by moritz (Cardinal) on May 13, 2008 at 14:51 UTC | |
by dragonchild (Archbishop) on May 13, 2008 at 14:12 UTC |