in reply to Array search

Assuming the array elements are unique and that you'll want to find more than one index, a hash is a good solution:
my @array = qw/a b c d/; my %indexOf = map { $array[$_] => $_} 0..$#array; printf "%s\n", ( $indexOf{c} == 2 ) ? "ok" : "bad";