OVH Cloud OVH Cloud

Regexp

2 réponses
Avatar
François
Bonjour,
Comment faire pour que le motif />
soit pris en compte.=20
En effet l'expression $chaine=3D~s/<(.*?)\/>//g;
fonctionne incorrectement puisque le traitement
de :
$chaine=3D"<B><B1>Toto</B1><B2/><B3>Tata</B3></B>";
renvoie $chaine vide.
Merci
Fran=E7ois

2 réponses

Avatar
Benoit Izac
Bonjour,

le 25/09/2004 à 20:50, François a écrit
dans le message <4155bded$0$697$ :

Comment faire pour que le motif />
soit pris en compte.
En effet l'expression $chaine=~s/<(.*?)/>//g;
fonctionne incorrectement puisque le traitement
de :
$chaine="<B><B1>Toto</B1><B2/><B3>Tata</B3></B>";
renvoie $chaine vide.


Pas chez moi :
% echo '<B><B1>Toto</B1><B2/><B3>Tata</B3></B>' |
perl -pe 's/<(.*?)/>//g'
<B3>Tata</B3></B>

--
Benoit Izac

Avatar
Jérémy JUST
On Sat, 25 Sep 2004 22:07:03 +0200
Benoit Izac wrote:

En effet l'expression $chaine=~s/<(.*?)/>//g;
fonctionne incorrectement puisque le traitement
de :
$chaine="<B><B1>Toto</B1><B2/><B3>Tata</B3></B>";
renvoie $chaine vide.


Pas chez moi :
% echo '<B><B1>Toto</B1><B2/><B3>Tata</B3></B>' |
perl -pe 's/<(.*?)/>//g'
<B3>Tata</B3></B>


J'essaie de devancer la question suivante: pour reconnaître uniquement
la balise <B2/> et la retirer, il faut quelque chose comme:

s/<([^<>]*)/>//g

--
Jérémy JUST