Bonjour à tous,
Tout est dans le titre :
Comment, dans une chaine de caractères, remplacer
<font color=#000000> par
<font color="#000000">
Sachant que je ne connais pas le code hexa, donc le dernier caractère.
Je sèche. Merci du tuyau.
Bonjour à tous,
Tout est dans le titre :
Comment, dans une chaine de caractères, remplacer
<font color=#000000> par
<font color="#000000">
Sachant que je ne connais pas le code hexa, donc le dernier caractère.
Je sèche. Merci du tuyau.
Avec les expressions régulières.
-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_SIGNATURE -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-
Dans la mesure du possible, essayez de montrer votre problème en situation réelle en nous donnant une url, que l'on puisse tester.
Pensez également à cocher
Aucun problème ne doit être résolu en MP (Message Privé) le forum est là pour ça.
Dimension Internet
Je pense que ca il le savez sinon, il serai pas venu sur le topic des regex
Essaye avec ca :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 // $string = ta chaîne $regex = '$<font color=(.*?)>.*?$i'; $remplace = '<font color="$1">'; echo preg_replace($regex, $remplace, $string);
-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_SIGNATURE -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-
Dans la mesure du possible, essayez de montrer votre problème en situation réelle en nous donnant une url, que l'on puisse tester.
Pensez également à cocher
Aucun problème ne doit être résolu en MP (Message Privé) le forum est là pour ça.
Dimension Internet
Merci Blueice....mais ce regex ne retourne rien. Et bien sûr, j'essaie de comprendre pourquoi...
Exemple bidon mais complet :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 <?php $string = ' <div align="center"> <div class="page" style="width:100%; text-align:left"> <div style="padding:0px 25px 0px 25px" align="left"> <font color=#C4C4C4> <div align="center"> <div class="page" style="width:100%; text-align:left"> <font color=#FFF> <div style="padding:0px 25px 0px 25px" align="left"> '; $regex = '$<font color=(.*?)>.*?$i'; $remplace = '<font color="$1">'; highlight_string( preg_replace($regex, $remplace, $string)); ?>
-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_SIGNATURE -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-
Dans la mesure du possible, essayez de montrer votre problème en situation réelle en nous donnant une url, que l'on puisse tester.
Pensez également à cocher
Aucun problème ne doit être résolu en MP (Message Privé) le forum est là pour ça.
Dimension Internet
Oui, avec highlight_string, ça retourne impec....
mais pourquoi j epeux pas l'utiliser dans une fonction du style :
Qui ne retourne rien ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 function transforme($str){ $regex = '$<font color=(.*?)>.*?$i'; $remplace = '<font color="$1">'; $new = preg_replace($regex, $remplace, $str); return $new; }
Quel serait l'intérêt d'une telle fonction si c'est pour l'appeler une seule fois ?
Sinon comme ca :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 function transforme($str){ $regex = '$<font color=(.*?)>.*?$i'; $remplace = '<font color="$1">'; highlight_string(preg_replace($regex, $remplace, $str)); }
-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_SIGNATURE -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-
Dans la mesure du possible, essayez de montrer votre problème en situation réelle en nous donnant une url, que l'on puisse tester.
Pensez également à cocher
Aucun problème ne doit être résolu en MP (Message Privé) le forum est là pour ça.
Dimension Internet
En fait, je ne comprends pas pourquoi highlight_string.
J'ai besoin d'une fonction car j'écris un flux RSS à la volée et ce genre de trucs (<font color=#000000>) ne passe pas et génère des erreurs.
J'ai donc besoin d'une fonction qui "filtre" tout ce que j'ai à incorporer pour ajouter des quotes partout où elles manquent dans l'attribut color de la balise font.
Et d'ailleurs, ai-je besoin de la balise <font> ? n'est il pas possible de remplacer :
Par
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2#000000
Partout où la fonction le trouve dans une chaîne ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2"#000000"
Oui désolé, le highlight c'était pour visualiser le résultat, vire le...
et fait un simple echo.
Tu ne peux pas te passer de la balise font.
-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_SIGNATURE -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-
Dans la mesure du possible, essayez de montrer votre problème en situation réelle en nous donnant une url, que l'on puisse tester.
Pensez également à cocher
Aucun problème ne doit être résolu en MP (Message Privé) le forum est là pour ça.
Dimension Internet
je peux donc utiliser un return et une fonction ?
Oui si tu veux ta fonction fonctionne
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 function transforme($str){ $regex = '$<font color=(.*?)>.*?$i'; $remplace = '<font color="$1">'; $new = preg_replace($regex, $remplace, $str); return $new; }
-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_SIGNATURE -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-
Dans la mesure du possible, essayez de montrer votre problème en situation réelle en nous donnant une url, que l'on puisse tester.
Pensez également à cocher
Aucun problème ne doit être résolu en MP (Message Privé) le forum est là pour ça.
Dimension Internet
ben oui...
Mais pourquoi ceci ne retourne rien qu'une page blanche comme neige ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 function transforme($str){ $regex = '$<font color=(.*?)>.*?$i'; $remplace = '<font color="$1">'; $new = preg_replace($regex, $remplace, $str); return $new; } $str = "<font color=#C4C4C4>"; echo transforme($str);
C'est la source de votre page qu'il faut regarder, n'ayant pour seul contenu une balise HTML qui sera interprétée par votre navigateur.
Merci merci à vous !
Super cool.
Bonne soirée.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager