[PERL] expression reg again ...
sbouli
Messages postés
208
Statut
Membre
-
lami20j Messages postés 21644 Statut Modérateur, Contributeur sécurité -
lami20j Messages postés 21644 Statut Modérateur, Contributeur sécurité -
re-Bonjour,
J'ai finalement activer strict et warning sur un de mes vieux code et je suis confronté à une bêtise .. pas de cambrais :
la ligne
me renvoie l'erreur :
quand la ligne du fichier ne contient ni valeur1, ni valeur2, ni valeur3 ... dois-je ajouter un test d'existence ? je pensais que le m correspondait à match .... je comprend plus
Stéphane
J'ai finalement activer strict et warning sur un de mes vieux code et je suis confronté à une bêtise .. pas de cambrais :
la ligne
if ($to && $to ne "" && $status =~ m/(valeur1|valeur2|valeur3)/i ){
me renvoie l'erreur :
Use of uninitialized value in pattern match (m//)
quand la ligne du fichier ne contient ni valeur1, ni valeur2, ni valeur3 ... dois-je ajouter un test d'existence ? je pensais que le m correspondait à match .... je comprend plus
Stéphane
A voir également:
- [PERL] expression reg again ...
- Reg cleaner - Télécharger - Nettoyage
- Expression écrite cm1 cm2 télécharger gratuit - Télécharger - Éducatifs
- Microsoft expression encoder - Télécharger - Divers Utilitaires
- Sorry this video can not be played. please try again or pick another video iptv traduction - Forum Téléviseurs
- Avoir du ping expression ✓ - Forum Réseau
4 réponses
Re,
Sinon j'aurais écrit comme ça
GNU/Linux:Linux is Not Ubuntu! Quel linux choisir ne veut pas dire votre Distribution préférée,
106485010510997108
Sinon j'aurais écrit comme ça
if( $status =~ m/(valeur1|valeur2|valeur3)/i){
if ($to ne ""){
.....
}
}else{
...
}--
GNU/Linux:Linux is Not Ubuntu! Quel linux choisir ne veut pas dire votre Distribution préférée,
106485010510997108
ben il est complet :
if ($to && $to ne "" && $status =~ m/(valeur1|valeur2|valeur3)/i ){
delete($tableau_to{$id});
}
j'ai fais l'inverse :
et j'ai la même erreur sur la ligne :
Use of uninitialized value in pattern match (m//)
j'ajoute que c'est une erreur qui se reproduit à plusieurs endroit de mon code comme par exemple :
PS :j'aurais pu utiliser split pour celle là :)
if ($to && $to ne "") {
if ($status =~ m/(valeur1|valeur2|valeur3)/i ){
delete($tableau_to{$id});
}
}
et j'ai la même erreur sur la ligne :
if ($status =~ m/(expired|bounced|sent)/i ){
Use of uninitialized value in pattern match (m//)
j'ajoute que c'est une erreur qui se reproduit à plusieurs endroit de mon code comme par exemple :
($info1,$info2,$info3)=$tmp_from=~/([^_|\n]*)?_?([^_|\n]*)?_?([^_|\n]*)?$/o;
PS :j'aurais pu utiliser split pour celle là :)