Bonjour,
Pourriez vous me dire ce qu'il fait cette ligne de commande svp ?
Merci bcp!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 grep {/($var1|$var2).*$(?<!~)/ } readdir(INPUT_DIR);
Bonjour,
Pourriez vous me dire ce qu'il fait cette ligne de commande svp ?
Merci bcp!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 grep {/($var1|$var2).*$(?<!~)/ } readdir(INPUT_DIR);
Elle filtre dans la liste des fichiers du répertoire référencé par le handle INPUT_DIR, ceux dont le nom correspond au motif /($var1|$var2).*$(?<!~)/
C'est à dire un nom contenant $var1 ou $var2... mais la fin de la regexp me laisse perplexe : l'usage de l'assertion (?<!~) signifiant "non précédé de ~", devrait être suivi d'un motif... or, il est précédé du motif $ qui signifie "fin de ligne".
Je suppose donc que pour sélectionner l'ensemble des fichiers ne se terminant pas par ~ et contenant $var1 ou $var2, il faudrait plutôt écrire :
/($var1|$var2).*(?<!~)$/
Merci bcp!!
En effet vous avez raison pour le motif![]()
Bonjour,
Je reviens vers vous à nouveau pour comprendre l'utilisation en perl de :
Merci!
Code : Sélectionner tout - Visualiser dans une fenêtre à part $var1=$var2[$var3]
$var3 est une variable scalaire contenant probablement une valeur numérique servant d'index dans une table @var2.
Le contenu de l'élément d'index $var3 de @var2 est alors affecté au scalaire $var1.
merci et le @$var, à quoi ca sert ? )
Partager