porbleme pour concevoir une expression reguliere

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 : porbleme pour concevoir une expression reguliere

Re: porbleme pour concevoir une expression reguliere

par lokicorp. » 08 juil. 2011, 08:33

Bon j'ai trouvé tout seul comme un grand... Pour ceux que ça peut intéresser voilà ma regex :
$regex2 = "#(>[\w\sàáâãäåæçèéêëìíîïðñòóôõöøœšÞùúûüýÿ÷%§~{}|@°£¤µ&$€\\/\(\).,;_:'\"\#\[\]!?*+-]*)(".$_SESSION['recherche_litterale'].")([\w\sàáâãäåæçèéêëìíîïðñòóôõöøœšÞùúûüýÿ÷%§~{}|@°£¤µ&$€\\/\(\).,;_:'\"\#\[\]!?*+-]*<)#isU";

echo preg_replace($regex2,"$1<font style=\"background-color: #ffff00\">$2</font>$3",$rq['art_contenu']);

porbleme pour concevoir une expression reguliere

par lokicorp. » 07 juil. 2011, 13:22

Bonjour,

Je cherche à utiliser la fonction preg_replace dans le moteur de recherche de mon site (pour précision c'est un site dynamique ou le contenu des pages se trouve dans une DB).

Lorsqu'un visiteur saisie une chaine de caractères dans ce moteur de recherche cela lui affiche un certain nombre de résultat et si il en sélectionne un, il se retrouve sur la page concernée avec toutes les occurrences de la chaine recherchée surlignées en jaune.

seulement voilà ma fonction preg_replace qui devrait exclure les balises html de mise en forme de la page ne le fait pas tout le temps, et de temps à autre je me retrouve avec balises html surlignées en jaunes....

ex: si je cherche la chaine "réf" il va me ramener des pages contenants les mots "référant, référence...." mais aussi les balises html "<a href="

voilà l'expression régulière que j'utilise :
$regex2 = "#([^<][\w\s=/\"_-]+)(".$_SESSION['recherche_litterale'].")([\w\s]+[^>])#isU";

echo preg_replace($regex2,"$1<font style=\"background-color: #ffff00\">$2</font>$3",$rq['art_contenu']);
merci d'avance de votre aide, moi là je tourne en rond....