Re: aide sur perl (suite)

Top Page

Reply to this message
Author: sCALP
Date:  
To: guilde
Subject: Re: aide sur perl (suite)
From: "anne aublanc" <anne.aublanc@???>
Sent: Thursday, November 14, 2002 11:05 AM

> | > La ligne que j'ai écrite pour le test :
> | > if ($ligne =~ m!(.*?);(.*?)$!gi)


je pense que vous vous compliquez un peu la tache, ou alors c moi qui ait
rate un passage....
je viens d'ecrire le bout de code suivant :

@a = ('tt\'tt\'\'tt;\'tt\'\'', 'qsdfqsfsf;sqfsfd\'sfqfssq');
for ($i=0; $i<@a; $i++) {
    if ($a[$i] =~ /^(.*?);(.*?)$/) {
        print "== ".$1." == ".$2." =="."\n";
    }
}


et j'ai bien en sortie :

== tt'tt''tt == 'tt'' ==
== qsdfqsfsf == sqfsfd'sfqfssq ==

le 'g' en parametre de l'expression reguliere signifie 'global', pour une
recherche du motif x fois dans la meme chaine, et le 'i' permet d'etre en
case-insensitive, mais il ne concerne que les caracteres specifiés pour la
recherche, et le '.' n'est pas concerné.... a moins qu'il n'existe un
point-virgule majuscule ;-)

sCALP