Je sèche sur une expression régulière...
Je voudrais utiliser la fonction PHP preg_replace() sur du code HTML :
<div>bla truc much<span class='machin' title='truc'>machin span truc</span>chose span budule</div>
et remplacer tous les 'machin', les 'truc' et les 'span' par 'MACHIN', 'TRUC' et 'SPAN' sans pour autant que les balises soient impactées..
Dans l'exemple donné, on obtiendrais :
<div>bla TRUC much<span class='machin' title='truc'>MACHIN SPAN TRUC</span>chose SPAN budule</div>
Si y a un pro des expressions régulières qui traine dans le coin, parce que la je sèche sévère depuis un p'tit moment... ^_^;
merci :-)
(La question est posée dans cette section parce que mon besoin n'a absolument rien à voir avec piwigo...)
Hors ligne
N'hésites pas à notifier les personnes qui pourraient t'aider. Car tout le monde ne va pas au café ^_^
Hors ligne
Personnellement j'utilise The Regex Coach. C'est en anglais, mais c'est assez complet : on peut copier une page entière dedans, et vérifier son expression sur toute la page.
Moyennant quoi, je n'ai pas réussi à trouver l'expression dont tu as besoin :-/ .
Hors ligne
LucMorizur a écrit:
Personnellement j'utilise The Regex Coach. C'est en anglais, mais c'est assez complet : on peut copier une page entière dedans, et vérifier son expression sur toute la page.
Je ne connaissais pas.
L'anglais en soi n'est pas un problème, c'est plus que çà soit un logiciel fonctionnant sous un OS dédié qui m'embête...
J'ai trouvé une doc assez complète avec un outil en ligne permettant de tester les regexp
http://www.lumadis.be/regex/tuto_pcre.php
néanmoins, j'ai pas réussi à faire ce que je voulais.
enfin si, mais c'est pas une solution 100% à base d'expressions régulières.. (mais l'essentiel pour l'instant c'est que j'ai obtenu le résultat souhaité)
Hors ligne
grum a écrit:
et remplacer tous les 'machin', les 'truc' et les 'span' par 'MACHIN', 'TRUC' et 'SPAN' sans pour autant que les balises soient impactées..
As-tu un exemple plus précis ? Tu as mis des simples quotes pour les attributs, est-ce volontaire et doit-on les chercher comme ça ?
SI on a une chaîne comme ça :
<p>voilà 'machun' et "truc"</p>
Est-ce qu'on les remplace ?
En clair, avec une expression des besoins peu précise, difficile de donner une réponse précise.
Sinon comme référence française d'expressions régulières il y avait : http://expreg.com/
Je dis il y avait car depuis le départ du premier auteur, le site se meurt un peu mais c'est encore une mine d'information.
Hors ligne
nicolas a écrit:
grum a écrit:
et remplacer tous les 'machin', les 'truc' et les 'span' par 'MACHIN', 'TRUC' et 'SPAN' sans pour autant que les balises soient impactées..
As-tu un exemple plus précis ? Tu as mis des simples quotes pour les attributs, est-ce volontaire et doit-on les chercher comme ça ?
SI on a une chaîne comme ça :
<p>voilà 'machun' et "truc"</p>
Est-ce qu'on les remplace ?
En clair, avec une expression des besoins peu précise, difficile de donner une réponse précise.
Sinon comme référence française d'expressions régulières il y avait : http://expreg.com/
Je dis il y avait car depuis le départ du premier auteur, le site se meurt un peu mais c'est encore une mine d'information.
Peu m'importe les guillemets : je les avais mis dans le texte pour bien distinguer les termes des l'exemple.
Ce que je souhaite, c'est que tout ce qui soit compris entre '<' et '>' soit ignoré par les remplacements.
Mais pas ce qui est compris entre deux balises.
Et seuls les mots complets sont remplacés.
Si on reprends l'exemple :
<div>bla 'truc' much<span class='machin' title='truc'>machin span truc</span>chose span spanbudule</div>
deviendrait :
<div>bla 'TRUC' much<span class='machin' title='truc'>MACHIN SPAN TRUC</span>chose SPAN spanbudule</div>
merci pour le lien, çà m'a l'air pas mal comme site. je vais y jeter un coup d'oeil.
Hors ligne