Utilisation de la valeur non initialisée dans la correspondance de modèle (m //)
J'obtiens cette erreur, même si je l'ai déclaré à ma regex variable.
my $pattern = '(Cat\.\sNo\.\s\d+)';
Plus loin dans mon code j'utilise ensuite $pattern
.
if ($page =~ /$pattern/)
{
push(@array, $element);
}
Mais lorsque j'exécute mon code, il me donne l'erreur ci-dessous, et continue à fonctionner avec succès:
Use of uninitialized value in pattern match (m//)
Une recherche sur Google pour cette erreur semble pointer à des scénarios où la variable n'a pas été initialisé, bien que dans mon cas, il semblerait que j'ai initialisé déjà?
source d'informationauteur kurotsuki
Vous devez vous connecter pour publier un commentaire.
Que le message n'est pas de vous dire que
$pattern
est non initialisée; c'est vous dire que$page
est non initialisée. Si vous attendez que$page
peut être initialisée, et c'est O. K., alors vous pouvez ignorer l'avertissement, et tirer les choses au clair pour les futurs lecteurs de code-source, en écrivant ceci:Le problème n'est pas
$pattern
- le problème est$element
Un test rapide produira le même résultat: