use Data::Dumper; use List::Util qw(first); my @x = ({"aaa" => 100}); say Dumper([grep { $_->{"aaa"} < 4 } @x]->[0]); say Dumper((first { $_->{"aaa"} < 4 } @x));