Hallo Schnaps
Hallo zusammen
ich habe hier ein zweidimensionales Hash das so aussieht.
$neu_alignment{'name1'}{'0'}=a
$neu_alignment{'name2'}{'0'}=c
$neu_alignment{'name3'}{'0'}=-
$neu_alignment{'name4'}{'0'}=-
$neu_alignment{'anzahl'}{'0'}=1
Deine Datenstruktur ist sehr fragwürdig.
Wenn du name1 bis name4 hast klingt das doch stark nach einem Array und der 2. Schlüssel sowieso. 0, 1, 2 das ist ein Array.
Vielleicht wäre alle einfacher, wenn du die Struktur sinnvoll änderst.
#!/usr/bin/perl -w
use strict;
use Data::Dumper;
my $alignment = [
{
name1 => 'a',
name2 => 'c',
name3 => '-',
name4 => '-',
anzahl => 1
},
{
name1 => 'a',
name2 => 'a',
name3 => 'a',
name4 => 'a',
anzahl => 4
},
{
name1 => 'a',
name2 => 'b',
name3 => 'b',
name4 => 't',
anzahl => 2
}
];
use Data::Dumper;
foreach( reverse sort { $a->{anzahl} <=> $b->{anzahl} } @$alignment)
{
print Dumper $_;
}
Struppi.