BonjourToujours dans mon analyseur syntaxique, j'ai un problème de recherche
de motif dynamique qui ne fonctionne pas avec m//Je ne trouve pas la
solution alors que ça me paraît être un problème avec une solution
évidente... Quelqu'un a une idée ?Romookfor($i=0;$i<@ligne;$i++){ if(){}
elsif(m/RF/){
if(m/\(/){# Les variables du tableau @variables proviennent d'une
fonction externe
$variable_type=$variables[0];
$readfile=$variables[1]; my $p;
for($p=0;$p<@ligne;$p++){
$_=$ligne[$p];
if(m/VAR/){
# probleme ici : if(m /$variables[1]/){# Pourquoi la valeur de la chaîne
$variable[1] n'est pas prise en compte par m//# Quand je mets la valeur en
"dur", du type m/CHAINEENDUR/, ça fonctionne, mais pas de manière dynamique#
Pourquoi ?
if(m /$variables[1]/){
$exist_file="ok";
last;
}
else{
$exist_file="no";
last;
}
}
# Accolade de la boucle for($p)
}# Accolade du if(m/\(/){ }# Accolade du
}# Accolade de laboucle for($i) principale}
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jérémy JUST
On Fri, 6 Oct 2006 19:58:59 +0200 "romook" wrote:
# probleme ici : if(m /$variables[1]/){# Pourquoi la valeur de la chaîne $variable[1] n'est pas prise en compte par m//# Quand je mets la valeur en "dur", du type m/CHAINEENDUR/, ça fonctionne, mais pas de manière dynamique# Pourquoi ? if(m /$variables[1]/){
Qu'est-ce qu'il y a dans $variables[1] ? Est-ce qu'il y a des métacaractères de regexp? Si oui, ça ira mieux avec:
if(m /Q$variables[1]/){ ^^
-- Jérémy JUST
On Fri, 6 Oct 2006 19:58:59 +0200
"romook" <romook@yahoo.fr> wrote:
# probleme ici : if(m /$variables[1]/){# Pourquoi la valeur de la chaîne
$variable[1] n'est pas prise en compte par m//# Quand je mets la valeur
en "dur", du type m/CHAINEENDUR/, ça fonctionne, mais pas de manière
dynamique# Pourquoi ?
if(m /$variables[1]/){
Qu'est-ce qu'il y a dans $variables[1] ? Est-ce qu'il y a des
métacaractères de regexp?
Si oui, ça ira mieux avec:
# probleme ici : if(m /$variables[1]/){# Pourquoi la valeur de la chaîne $variable[1] n'est pas prise en compte par m//# Quand je mets la valeur en "dur", du type m/CHAINEENDUR/, ça fonctionne, mais pas de manière dynamique# Pourquoi ? if(m /$variables[1]/){
Qu'est-ce qu'il y a dans $variables[1] ? Est-ce qu'il y a des métacaractères de regexp? Si oui, ça ira mieux avec: