How can I find the number of keys in a hash in Perl?
How do I find the number of keys in a hash, like using $#
for arrays?
scalar keys %hash
or just
keys %hash
if you're already in a scalar context, e.g. my $hash_count = keys %hash
or print 'bighash' if keys %hash > 1000
.
Incidentally, $#array
doesn't find the number of elements, it finds the last index. scalar @array
finds the number of elements.
we can use like this too
my $keys = keys(%r) ;
print "keys = $keys" ;
0+(keys %r)