#!/usr/bin/perl use strict; use warnings; my @array=('a','b','c'); my %list=( 'a' => ["100","nuts"], 'b' => ["200","bolts"], 'c' => ["300","screws"], ); my $msg = getMsg(\@array, \list); #print $msg; sub getMsg { my $aref = shift; my $href = shift; my %line = ('100' => ["abc","xyz"] 'nuts' => ["def","lmn"] ); my @arr = @$aref; my %new = %$href; if(exists {Keys of %line contains any values of $new{a} }) #need this condition { do something else { do something } }