PERL - статьи

Вывод хеша в порядке вставки с использованием Tie::IxHash


Для перебора элементов хэша в порядке вставки, т.к. keys и each выводят элементы хеша неупорядоченно, можно воспользоваться модулем(либо операциями с массивами) Tie::IxHash

use Tie::IxHash

tie %hash, "Tie::IxHash";

#операции с %hash

@keys = keys %hash;

Модуль Tie::IxHash заставляет функции keys, each и values возвращать элементы в порядке занесения их в хэш. Если у Вас нет такого модуля IxHash.pm то нужно зайти на , найти его и установить, если у вас нет прав на установку библиотек, то в первой строчке скрипта нужно написать #!/put'/do/perl'a -wT -I/put'/do/nugnogo/modulia и установить модуль в Вышей домашней директории. Пример использования Tie::IxHash:

use Tie::IxHash

tie %hash, "Tie::IxHash";

%hash = (

'шляпа' => 'серая',

'водка' => 'горькая',

'вобла' => 'вкусная');

print "В упорядоченной вставке список хеша такой:\n";

foreach $qwerty (keys %hash){

print " $qwerty\n";

}

print "Кроме того, предметы обладают некоторыми свойствами:\n";

while(($predmet, $opredelenie) = each %hash){

print $predmet $opredelenie,"\n";

}

см. тех документацию по модулю Tie::IxHash.



Содержание раздела