|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : juillet 2009 Messages : 18 ![]() |
Bonjour,
J'essaie vainement de résoudre un problème avec une expression régulière. Voici le contexte : Remplacer dans le texte suivant toutes les occurrences de "Gras>" par "GrasCyan>" mais uniquement les occurrences présentes entre les balises "<Cyan>" et "</Cyan>" Texte : Citation:
Citation:
Code php :
preg_replace('(Gras>)', '$1GrasCyan>', $str_orig); Si une âme charitable passe par ici je lui en serai très reconnaissant. Merci d'avance |
||
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Inscription : janvier 2006 Messages : 951 ![]() |
l'idéal pour ça c'est de faire du xquery. ça fait tellement que j'ai pas fait de xquery que j'aurai du mal a t'aider.
sinon puisque tu utilises des pattern, pourquoi ne pas ajouter la balise <cyan></cyan> a ton pattern avec des conditions suffisament sioux pour eviter l'inclusion multiple...
__________________
PHP fait nativement la validation d'adresse électronique Utilisez le bouton résolu! |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : juillet 2009 Messages : 18 ![]() |
Bonjour gene69,
Merci pour ton retour. En fait, je n'ai pas tout dit; j'ai posté dans le forum Regex de PHP mais au final c'est pour utiliser l'expression régulière dans un logiciel de base de données qui s'appelle Filemaker. Du coup, pas de xquery... |
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : juillet 2009 Messages : 18 ![]() |
Je me permet de relancer le sujet.
N'est-il pas possible d'effectuer de la récurrence sur une partie de texte définie avec une regex? Elle est là la solution je pense. Mais ça dépasse mes compétences |
|
|
00
|
|
|
#5 | ||
![]() ![]() Développeur Web Inscription : août 2006 Messages : 2 700 ![]() |
Bonjour,
Le plus simple et le plus maintenable (et peut-être même le plus performant) consiste à capturer les contenu de la balise <Cyan> puis faire le remplacement. Code :
__________________
|
||
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Inscription : juillet 2009 Messages : 18 ![]() |
Bonjour s.n.a.f.u,
Merci pour ta réponse. Comme je le disais dans un message au dessus, je ne bosse pas en PHP mais dans Filemaker (outil de gestion de base de données) Cependant la technique que tu me proposes est peut être transposable. Il faut que je fasse des tests. Je vais quand même mettre le sujet en résolu. Encore merci. |
|
|
00
|
|
|
#7 | ||
![]() ![]() Développeur Web Inscription : août 2006 Messages : 2 700 ![]() |
Une variante qui peut éventuellement t'intéresser
Code :
__________________
|
||
|
|
00
|
|
|
#8 |
|
Invité de passage
![]() Inscription : juillet 2009 Messages : 18 ![]() |
Est ce qu'il existe un mot plus fort que "MERCI"????
Je ne sais pas alors grand merci s.n.a.f.u pour ta dernière réponse. Ça correspond impeccablement à ce que je souhaite faire. Mais je n'ai pas tout compris dans le pattern. Pourrais tu me dire qu'est ce qui permet de trouver toutes les occurrences de "Gras>" ? C'est cette partie "Gras>(?=" ? Merci pour ta réponse |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com