|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre chevronné
![]() |
Salut,
Je n'arrive pas à arrêter ma capture à un caractère donné. Ex : <aaa:logo type="clip" id="4" fullName="" xmlns:flt="http://namespaces.dcm.dev.cji.fr/XsdFlt.xsd"><bbb:crop top="75" bottom="75" left="75" right="75" xmlns:pct="http://namespaces.dcm.dev.cji.fr/XsdPCT.xsd" /> Je veux supprimer la partie rouge en gras. J'ai créé le pattern : xmlns:.{3}?=".+.xsd" Si l'xml a un saut de ligne après la balise de fermeture ça fonctionne par contre, s'il est écrit comme ci-dessus, le match va jusqu'au dernier ". Pourriez-vous m'aider ? D'avance merci Laurent |
|
|
00
|
|
|
#2 |
|
Membre chevronné
![]() |
Salut,
J'ai finalement trouvé un pattern qui semble fonctionner. C# : "xmlns:.{3}?=\"[^\"]*\"" ++ Laurent |
|
|
00
|
|
|
#3 |
![]() ![]() Vincent Inscription : juillet 2005 Messages : 14 929 ![]() |
Ton + doit être "ungreedy"
|
|
|
00
|
|
|
#4 |
|
Membre chevronné
![]() |
Tu penses que c'est mieux que le pattern que j'ai créé ?
Merci Laurent |
|
|
00
|
|
|
#5 |
![]() ![]() Inscription : septembre 2010 Messages : 7 101 ![]() |
pourquoi ne pas utiliser les outils adaptés comme SimpleXML ou DOMDocument ?
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#6 |
|
Membre chevronné
![]() |
Les XSD Sont très complexes et imbiqués et il y a des préfixes, j'ai du faire plein de magouilles pour que ça fonctionne.
Les objets XML ou Linq pour XML sont très galère à utiliser s'il y a des prefixes. |
|
|
00
|
|
|
#7 |
![]() ![]() Inscription : septembre 2010 Messages : 7 101 ![]() |
c'est pour ca qu'il y'a DOMXPath::registerNamespace et SimpleXMLElement::registerXPathNamespace
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#8 |
|
Membre chevronné
![]() |
Ah je n'avais pas trouvé ça...
Merci du tuyau je vais regarder |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com