help pour regex

help pour regex - Perl - Programmation

Marsh Posté le 18-12-2008 à 15:19:08    

salut,
 
j'ai ceci dans mon code
 

Code :
  1. if ( /\s*(\$+)(.+)\s*=.*$/) ...
  2. print $1$2;


 
 
j'ai ceci dans mon fichier
test.$$VAR=14
$$VAR=5
 
 
en faite le print ne m 'affiche que
$$VAR
$$VAR
 
il n'affiche pas
test.$$VAR
$$VAR
 
je ne comprends pas pourquoi ?
 
merci de votre aide

Reply

Marsh Posté le 18-12-2008 à 15:19:08   

Reply

Marsh Posté le 18-12-2008 à 16:24:20    

donny3 a écrit :

salut,
 
j'ai ceci dans mon code
 

Code :
  1. if ( /\s*(\$+)(.+)\s*=.*$/) ...
  2. print $1$2;


 
 
j'ai ceci dans mon fichier
test.$$VAR=14
$$VAR=5
 
 
en faite le print ne m 'affiche que
$$VAR
$$VAR
 
il n'affiche pas
test.$$VAR
$$VAR
 
je ne comprends pas pourquoi ?
 
merci de votre aide

Ben ton $1 matche (\$+) donc $$ dans tes données, et ton  $2 matche (.+) donc tout ce qui est avant =  soit VAR dans tes données
Pour avoir ce que tu veux, tu peux essayer

Code :
  1. if ( /\s*(.*)(\$+)(.+)\s*=.*$/) ...
  2. print $1$2$3;


voire mieux:

Code :
  1. if ( /\s*(.*\$+.+)\s*=.*$/) ...
  2. print $1;


A+,


Message édité par gilou le 18-12-2008 à 16:25:05

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 18-12-2008 à 16:29:26    

j'ai essayer avec (.*)
mais sa plante
 
Unmatched ( in regex; marked by <-- HERE in m/( <-- HERE \s*(.*)(\$+)(.+)\s*=.*$/

Reply

Marsh Posté le 18-12-2008 à 16:40:50    

j'ai une parenthese en trop, c est bon

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed