#!/usr/bin/perl use strict; use warnings; use Data::Dumper; my %lookup; $lookup{'red'} = 77; $lookup{'blue'} = 33; sub get_by_value { my $val = shift; return [grep { $lookup{$_} == $val } keys %lookup]; } die Dumper get_by_value(77);