Expression rationnelle

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Expression rationnelle

Re: Expression rationnelle

par devlop78 » 17 mai 2010, 14:57

Merci, Nickel !

Code : Tout sélectionner

<?php $mavar = "<p><strong id=':)'>les :) sont des sourires :(</strong></p>"; function replace_Smiley($capture) { $de = array(':)',':('); $par = array('content', 'pas content'); return str_replace($de, $par, $capture[1]).$capture[2]; } echo preg_replace_callback('#((?:(?!<[/a-z]).)*)([^>]*>|$)#si', 'replace_Smiley', $mavar); ?>

Re: Expression rationnelle

par Genova » 17 mai 2010, 14:15

Expression rationnelle

par devlop78 » 17 mai 2010, 12:29

Bonjour,

Je cherche une expression rationnelle qui me permettrait de remplacer tous les ":)" dans un texte HTML sauf s'il est compris dans des balises (dans un attribut title par exemple). J'ai pensé à un truc comme /[^<](.*):)(.*)[^>]/U mais je sais déjà que ça ne va pas fonctionner ... ^^

Merci d'avance :)