Thread Hash richtig sortieren (9 answers)
Opened by rwilli at 2009-10-01 14:28

murphy
 2009-10-01 15:44
#126395 #126395
User since
2004-07-19
1776 Artikel
HausmeisterIn
[Homepage]
user image
Unter "lexikographisch sortieren" verstehe ich "alphabetisch sortieren, wie in einem Wörterbuch oder Lexikon" -- daher kommt wohl auch der Begriff, wenn mich nicht alles täuscht.

Zum Beispiel könnte man das, was ich vorgeschlagen habe, so machen:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#!/usr/bin/perl
use strict;
use warnings;

use Net::IP qw/ip_iptobin/;

my %temphash = (
  '1AHIT' => { COMMENT => '1AHIT', IP => '192.168.221.10' },
  '2AHIT' => { COMMENT => '2AHIT', IP => '192.168.222.10' },
  'CAD1-OST' => { COMMENT => 'CAD1-OST', IP => '192.168.43.10' }
);

my @keys_sorted_by_ip = sort {
  ip_iptobin($temphash{$a}{IP}, 4) cmp ip_iptobin($temphash{$b}{IP}, 4)
} keys %temphash;

print map { "$_: IP = $temphash{$_}{IP}\n" } @keys_sorted_by_ip;
When C++ is your hammer, every problem looks like your thumb.

View full thread Hash richtig sortieren