Fan de regex, voici une problèmatique qui va peut-être vous faire dresser les cheveux sur la tête.
Voici ma solution pour le moment:
Regex:
(?(?=^)^([^<]*?)(le|la)([^<]*?)|(?=>)([^<]*?)(le|la)(.*?)?)
Critère de remplacement:
\1\4<span id="hlzone" style="background-color:#DDDD00;">\2\5</span>\3\6
Le but ce cet exemple est de surligner tout les mots d'un message ou d'une page qui contienne "le" ou "la"
MAIS !! Attention, on ne veux pas que cette exemple suivant:
Le monstre: <a href="www.lemonstre.com">Bella!</a>.
devienne:
<span>Le</span> monstre: <a href="www.<span>le</span>monstre.com">Bel<span>la</span>!</a>.
mais bien:
<span>Le</span> monstre: <a href="www.lemonstre.com">Bel<span>la</span>!</a>.
Vous comprendrez que tout ce qui est DANS une balise ne doit en aucun cas être touché.
Alors je voulais savoir si vous aviez sous la main des REGEX qui font ce genre de chose. Je vous ai montré le mien (qui n'est peut-être pas parfait), à vous de montrez ce que vous avez
Partager