OVH Cloud OVH Cloud

Recherche de motif?

1 réponse
Avatar
romook
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}

1 réponse

Avatar
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