sub member { my $item = shift; my @found = grep $_[$_] eq "$item", 0..$#_; if (defined @found) { return $found[0] + 1; } else { return 0; } } ## end member() @x=(0,1,3); print member(2,@x),"\n"; # not in list print member(0,@x),"\n"; # 1st item in list print member(2,@x),"\n"; # not in list, again