Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1203 connectés 

  FORUM HardWare.fr
  Programmation
  Perl

  [PERL] Rechercher un / avec une regex

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PERL] Rechercher un / avec une regex

n°467683
ceyquem
E falso sequitur quodlibet
Posté le 25-07-2003 à 13:59:34  profilanswer
 

je cherche des balises html en perl, mais si je cherche < / B >, ben le / cause une erreur de syntaxe car c'est un caractère spécial :
 
$li =~s/</b>/balise/;
 
je n'ai rien trouvé sur le net...
comment rendre cette expression valide ??
 
merci d'avance !

mood
Publicité
Posté le 25-07-2003 à 13:59:34  profilanswer
 

n°467711
anapajari
s/travail/glanding on hfr/gs;
Posté le 25-07-2003 à 14:23:44  profilanswer
 

Code :
  1. $li =~s/<\/b>/balise/;


 
Note qui si tu as envie tu peux faire la balises de début et de fin en même temps:

Code :
  1. $li =~s/<b>(.*?)<\/b>/balise$1balise/is;


A la fin le i c'est pourqu'il ne tienne pas compte de la casse, le s pour le cas ou le motif est sur plusieurs lignes.

n°467896
pospos
Posté le 25-07-2003 à 16:23:22  profilanswer
 

et il faut rajouter un g pour qu'il ne s'arrete pas au premier match, mais fasse tous les tags
 

n°2197408
josephtux
Posté le 13-07-2013 à 21:15:23  profilanswer
 

En Perl, Pour écrire une regex qui reconnait les slash, / , il suffit de choisir un autre séparateur. Presque tout caractère ASCII est autorisé, ainsi que les paires () {} <> ..  
Damian Conway recommande [REGEX] : s[regex][remplacement] ou m[regex]
Dans ce cas le m initial est obligatoire
le ? est un séparateur spécial ( j'ai oublié ce qu'il fait.. )
 
Les options de regex étendus comme grep -e ou egrep évitent aussi le syndrome des \/antislash\/slash

n°2197425
gilou
Modérateur
Modzilla
Posté le 14-07-2013 à 10:38:46  profilanswer
 

Citation :

Damian Conway recommande [REGEX] : s[regex][remplacement] ou m[regex]

Je recommande plutôt l'emploi de m{...} (et c'est une pratique très courante, car elle rappelle l'usage de q{...} pour quoter), parce que l'usage de {....} à l'intérieur d'une regexp, avec sa sémantique propre, est moins fréquent que celui de [...].
 
Pour les substitutions, j'ai plutôt tendance à utiliser | s'il ne figure pas dans le corps de la regexp, ou ! sinon, bref s|...|...| ou s!...!...!, mais je n'érigerais pas cette pratique en recommandation, c'est une affaire de goût.
A+,


Message édité par gilou le 14-07-2013 à 10:52:22

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

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Perl

  [PERL] Rechercher un / avec une regex

 

Sujets relatifs
[Perl] Cgi de redirectionInstaller des modules perl
[PERL] Quitter proprement un scriptcalcul erroné en perl
[Perl] Pb avec un split[perl] limite en taille des variables perl
[Perl] Récupérer les champs d'une ligne[perl] compilation d'un script perl
Plus de sujets relatifs à : [PERL] Rechercher un / avec une regex


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR