The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Сортировка Хеш!"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Сортировка Хеш!"
Сообщение от sclif13 emailИскать по авторуВ закладки on 22-Янв-03, 12:51  (MSK)
Ребята подскажите как правильн отсортировать хеш
есть хеш %in
foreach $key (sort keys %in) {.....}
выводит ключи
10.0.0.1          
10.0.0.10
10.0.0.11
10.0.0.2
10.0.0.20
10.0.0.21
  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "RE: Сортировка Хеш!"
Сообщение от konst emailИскать по авторуВ закладки on 22-Янв-03, 13:32  (MSK)
>Ребята подскажите как правильн отсортировать хеш
>есть хеш %in
>foreach $key (sort keys %in) {.....}
>выводит ключи
>10.0.0.1
>10.0.0.10
>10.0.0.11
>10.0.0.2
>10.0.0.20
>10.0.0.21
====
В этом случае может помочь:
sub super_sort {
    my ($field,$f_sep,$hash_name) = @_;
#    @a = split($f_sep,${$hash_name}{$a}); # sort by value
#    @b = split($f_sep,${$hash_name}{$b}); # sort by value
    @a = split($f_sep,$a);  # sort by key
    @b = split($f_sep,$b);  # sort by key

    if ($a[$field] =~ /^\d+$/ && $b[$field] =~ /^\d+$/) {
$a[$field] <=> $b[$field];
    } else {
uc($a[$field])  cmp  uc($b[$field]);
    }
}

$hash_name = 'in'; #need only for  sort by value
$number_of_field = 3; # begin from 0;
$field_separator = '\.';

foreach $x (sort {super_sort ($number_of_field,$field_separator,$hash_name) } (keys %in)) {
    print "$x ($in{$x})\n";
}


  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру