Expression régulière remplacer des mots entres deux balises.
Shawlong
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour à tous. J'ai besoin de votre aide pour une expression régulière.
J'ai sur mon site (en construction non en ligne) la possibilité d'ajouter des pages de textes.
J'aimerais pouvoir changer la couleur de certains mots qui sont uniquement contenue entre deux balises
Puisque les textes sont variables, il est possibles que les mots visées ce retrouve (toujours dans la balise
J'ai essayé ce code
En faite le code fonctionne, mais seulement pour le premier mots_a_colorer trouver dans la balise
Donc je sais que c'est mon expression régulière qui est mal écrite, mais je n'arrive pas à trouver la solution pour visée tout les autres mots_a_colorer qui reste.
Merci beaucoup.
J'ai sur mon site (en construction non en ligne) la possibilité d'ajouter des pages de textes.
J'aimerais pouvoir changer la couleur de certains mots qui sont uniquement contenue entre deux balises
<Pre>(utiliser pour garder la tabulation) , donc même si les mots ce retrouve ailleurs dans le texte, ils ne seront pas visés par le changement de couleur.
Puisque les textes sont variables, il est possibles que les mots visées ce retrouve (toujours dans la balise
<Pre>) au début, à la fin , qu'il en est plusieurs après ou avant du texte ou même qu'il n'y a pas.
J'ai essayé ce code
$texte = preg_replace('#<Pre>(.*)Mots_a_colorer(.*)</Pre>#isU ' , <Pre>$1<span style='color: red;>Mots_a_colorer</span></pre>' , $texte_avant_modification)
En faite le code fonctionne, mais seulement pour le premier mots_a_colorer trouver dans la balise
<Pre>, s'il y a d'autre mots, ils sont simplement ignorés et ils n'ont pas de balise
spanpour les mettrent en couleurs.
Donc je sais que c'est mon expression régulière qui est mal écrite, mais je n'arrive pas à trouver la solution pour visée tout les autres mots_a_colorer qui reste.
Merci beaucoup.
A voir également:
- Expression régulière remplacer des mots entres deux balises.
- Remplacer disque dur par ssd - Guide
- Remplacer word - Guide
- Deux ecran pc - Guide
- Comment faire deux colonnes sur word - Guide
- Nombre de jours entre deux dates excel - Guide
1 réponse
Voilà une solution bien fonctionnelle.
Si tu as besoin d'aide supplémentaire, n'hésite pas.
@ plus,
$w = '<pre>Je pense, donc je suis!</pre>'; // Les mots à colorer, sous: /\b($mots_a_colorer)\b/i // Les i permettent d'être insensible à la casse, $c = array('/\b(je)\b/i', '/\b(donc)\b/i'); $w = preg_replace($c, '<span style="color:red;">$1</span>', $w); echo $w;
Si tu as besoin d'aide supplémentaire, n'hésite pas.
@ plus,