1
2
3
4
5
6
FARBE,FRUCHT,GESCHMACK
rot,Himbeere,sauer
rot,Kirsche,sauer
blau,Brombeere,sauer
blau,Gummibeeren,süß
grün,Apfel,süß
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
#!/usr/bin/perl use strict; use warnings; use Data::Dumper; my @AoA = ( [qw(rot Himbeere sauer )] , [qw(rot Kirsche sauer )] , [qw(blau Brombeere sauer )] , [qw(blau Gummibeeren süß )] , [qw(grün Apfel süß )] ); my %HoAoA; push @{$HoAoA{$_->[0]}}, [@$_[1,2]] for @AoA; print Dumper \%HoAoA;
Guest peterbpush @{$HoAoA{$_->[0]}}, [@$_[1,2]] for @AoA;
Wieso aber wird dem Hash ein @ vorgesetzt, ist das dann was spezielles?
1 2 3 4 5 6 7
foreach my $k (keys %HoAoA) { foreach (@{$HoAoA{$k}}) { foreach ($_) { print "$k - @{$_}\n"; }; }; };
2015-03-06T09:30:55 peterbJa, das kann nicht schaden. Komplexe Datenstrukturen sind – äh, komplex.... da sollte ich noch ein wenig nachlesen
2015-03-06T09:30:55 peterbIch habs aber soweit zum laufen gebracht, das ich was damit anfangen kann.Code (perl): (dl )1 2 3 4 5 6 7foreach my $k (keys %HoAoA) { foreach (@{$HoAoA{$k}}) { foreach ($_) { print "$k - @{$_}\n"; }; }; };
1 2 3 4 5 6
for my $k (keys %HoAoA) { print "$k\n"; for my $ar (@{$HoAoA{$k}}) { print " "x4 , join " ", @$ar, "\n"; }; };