in reply to Smartmatch alternatives
TIMTOWTDI.
I often use the grep solution $contained = grep { $_ eq $searched } @array; or even grep /^\Q$searched$/, @array
If you are going to search for several values in the same @array, a hash may be a good idea (and unless order is important, or the same value can appear more than once, you could just use a hash all the way):
my %hash = map { $_ => 1 } @array; for $search (@listOfScalars) { say '@array contains '.$_ if exists $hash{$_}; }
Or there's also the first_index function from List::AllUtils. Which is similar to the grep solution, except it stops at the first match.
|
---|
In Section
Seekers of Perl Wisdom