Et voici un problème qui me fait m'arracher les cheveux de la tête :
Supposons que la 1ère chaîne contient ce qu'on recherche. La variable $&
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 @strings = ... #un tableau contenant des chaînes de caractères $nb_occurences = 0; for(@strings) { # Recherche sur la chaîne courante $_ =~ /.../; if ($& ne "") {$nb_occurences++); }
est donc significative. Le problème est que $& restera inchangée MÊME en
cas de recherche infructueuse par la suite (au lieu d'être remise à zéro) !!!!
On se retrouve donc avec une valeur erronée pour $nb_occurences.
Comment contourner ce problème ATROCE (bien que sans doute très connu)
et qui me fait penser que PERL est un langage aussi détestable que je le craignais.
Partager