use warnings; use strict; use Data::Dumper; my $household = { 23 => { last => 'Smith', first => 'Mary' }, 22 => { last => 'Jones', first => 'Bob' } }; my @slice = @{ $household->{23} }{qw(first last)}; print Dumper(\@slice); __END__ $VAR1 = [ 'Mary', 'Smith' ];