Si tu n'as aucune information a priori sur le tableau (est-il trié ?), tu n'as aucun autre moyen que la recherche linéaire pour vérifier si un élément s'y trouve. Dans ce cas il n'existe aucune fonction Perl prédéfinie, généralement on utilise quelque chose comme :
1 2 3 4 5 6 7 8
| use List::Utils qw(first);
sub in_list {
my $elem = shift;
return defined( first {$elem eq $_} @_);
}
print "Hello is in the list" if in_list "hello", ("hello", "world"); |
Mais si tu as souvent besoin de faire ça, c'est peut-être que tu utilises des listes là où tu devrais plutôt utiliser des hashs :
print "Hello is in the set" if exists $hash{hello};
--
Jedaï
Partager