my $cmd = 'south'; my @array = ( 'north#library , 'south#kitchen', 'east#hallway'); my ($location) = map {m/\#(.*?)$/; $1} grep {m/^$cmd\#/} @array || print "some error message"; #### my @possibilities = map {} grep {} @array || ...