in reply to case insensitive: Which tree to bark up?
if (lc($ref->{prodname}) eq lc($value)) ...
unless you actually need to do a partial match, for which case:
if ($ref->{prodname} =~ /\Q$value/i) ...
MeowChow s aamecha.s a..a\u$&owag.print
In Section
Seekers of Perl Wisdom