@data=<DATA>; print join("\n",sortieren(@data)); sub sortieren{ my @zeilen=@_; my @sortiert = map { $_->[0] } sort { $a->[1] cmp $b->[1] || $a->[2] cmp $b->[2] } map { [$_,(split (/\; /,$_))[1,0]] } @zeilen ; return @sortiert; } __DATA__ Peter; Bauer; Hohenufer 17; 31151 Hans; Meiser; Doffenweg 1; 30989 Urs; Müller; Schnellweg 8; 30166 Urs; Brüller; Ladenstrasse 4; 30166 Urs; Aamann; Münzgasse 56; 80782 Urs; Amann; Holzweg 17; 40555 |
my @sortiert = map { $_->[0] } sort { $a->[1] cmp $b->[1] || $a->[2] cmp $b->[2] } map { [$_,(split (/\; /,$_))[1,0]] } @zeilen ; |
@data=<DATA>; print join("\n",sortieren(@data)); sub sortieren{ my @zeilen=@_; my @sortiert = map { $_->[0] } sort { $a->[1] cmp $b->[1] || $a->[2] cmp $b->[2] } map { [$_,(split (/\; /,$_))[3,1]] } @zeilen ; return @sortiert; } __DATA__ Peter; Bauer; Hohenufer 17; 31151 Hans; Meiser; Doffenweg 1; 30989 Urs; Müller; Schnellweg 8; 30166 Urs; Brüller; Ladenstrasse 4; 30166 Urs; Aamann; Münzgasse 56; 80782 Urs; Amann; Holzweg 17; 40555 |
@data=<DATA>; print join("\n",sortieren(@data)); sub sortieren{ my @zeilen=@_; my @sortiert = map { $_->[0] } sort { $a->[1] cmp $b->[1] } map { [$_,(split (/\; /,$_))[1]] } @zeilen ; return @sortiert; } __DATA__ Peter; Bauer; Hohenufer 17; 31151 Hans; Meiser; Doffenweg 1; 30989 Urs; Müller; Schnellweg 8; 30166 Urs; Brüller; Ladenstrasse 4; 30166 Urs; Aamann; Münzgasse 56; 80782 Urs; Amann; Holzweg 17; 40555 |