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

  FORUM HardWare.fr
  Programmation
  PHP

  [solved]Preg_replace en Ignorant les contenus des tags HTML

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[solved]Preg_replace en Ignorant les contenus des tags HTML

n°1867571
grosbin
OR die;
Posté le 30-03-2009 à 17:37:00  profilanswer
 

Bonjour, je suis récemment sur un générateur de liens

Code :
  1. $data="noel et paques sont de grandes fêtes blablabla .. <img src='noel'> <img src='paques'><a href='noel'>noel</a><a href='noel'>paques</a>";
  2. $v="noel";
  3. $replacedKeyword="<a href=\"/$v\" title=\"$v\">$v</a>";
  4. $whole_word="#\\b($v)\\b#i";
  5. $data=preg_replace($whole_word,$replacedKeyword,$data,3);
  6. }


Seulement voilà, comment ne pas remplacer le contenu des balises HTML du texte ???
Cette version modifie le contenus des Tags aussi Well (<img title="noel"> <a title=noel>noel</a> )
avez-vous une solution ? merci
 :jap:  
 
Je pensais à qqch comme ça ..

Code :
  1. #{(?!< )(?!\"|')\\bnoel\\b(?!> )}#is

Message cité 1 fois
Message édité par grosbin le 08-04-2009 à 17:58:33

---------------
Photos Panoramiques Montagnes Haute Savoie
mood
Publicité
Posté le 30-03-2009 à 17:37:00  profilanswer
 

n°1871203
NewsletTux
&lt;Insérez ici votre vie /&gt;
Posté le 08-04-2009 à 17:15:56  profilanswer
 

je ne sais pas si t'auras plus de chances que moi ...
 
cf. http://forum.hardware.fr/hfr/Progr [...] 1867_1.htm :(
EDIT : en tous cas j'active ici aussi l'alerte mail "au cas où" ^^


Message édité par NewsletTux le 08-04-2009 à 17:17:01

---------------
NewsletTux - outil de mailing list en PHP MySQL
n°1871244
macgawel
Posté le 08-04-2009 à 17:38:54  profilanswer
 

grosbin a écrit :

avez-vous une solution ?


Oui.  :D  

Citation :

je pensais à qqch comme ça ..

Code :
  1. #{(?!< )(?!\"|')\\bnoel\\b(?!> )}#is


Tu as testé ton expression régulière ?
Si oui, ça donne quoi ?
Si non, qu'est-ce que tu attends ?
 
 
Cette fonction pourrait t'intéresser - particulièrement les exemples  :whistle:

n°1871261
grosbin
OR die;
Posté le 08-04-2009 à 17:51:56  profilanswer
 

A force d'essais
preg_replace("@\b$mot(|\b)(?![^<]*> )(?![^>]*</a)@is"


---------------
Photos Panoramiques Montagnes Haute Savoie

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

  [solved]Preg_replace en Ignorant les contenus des tags HTML

 

Sujets relatifs
authentification PHP HTMLcolorer bordure tableau html
[problème]Gmail newsletters HTMLProblème HTML
Preg replace surligner des mots mais pas des balisesBarre de rechrche sur une page HTML
Batch avec HTML[HTML] Créer un bouton ouvrant un fichier
Plus de sujets relatifs à : [solved]Preg_replace en Ignorant les contenus des tags HTML


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