in reply to Sort AoH by another array
Build a lookup hash:
#!/usr/bin/perl use warnings; use strict; use Data::Dumper; my $array_ref = [1, 2, 3, 4, 5]; my $array_of_hashes_ref = [ {key => 4, name => 'label4'}, {key => 2, name => 'label2'}, {key => 5, name => 'label5'}, {key => 1, name => 'label1'}, {key => 3, name => 'label3'} ]; my %lookup; @lookup{map {$_->{key}} @$array_of_hashes_ref} = @$array_of_hashes_ref +; print "$lookup{$_}{key}, $lookup{$_}{name}\n" for @$array_ref;
Prints:
1, label1 2, label2 3, label3 4, label4 5, label5
|
|---|