0
J'essaie d'obtenir la valeur de "state" lorsque le nœud "name" est égal par exemple à "This is A" basé sur le XML ci-dessous:Obtenir un nœud basé sur une autre valeur de nœud avec des espaces blancs
<xml>
<event>
<name>This is A</name>
<state>OK</state>
</event>
<event>
<name>This is B</name>
<state>KO</state>
</event>
</xml>
Faire quelque chose comme //event[name="This is A"]/state.text()
ne fonctionne pas ... Comment est-ce que je pourrais le faire?
L'utilisation xmllint du terminal linux j'obtiens l'erreur syntaxique près (et en utilisant QXMLEdit ne montre rien à la suite de cette XPath En outre, en supprimant la dernière partie "/ text()" juste pour tester, je reçois "xmlXPathEval: évaluation a échoué" en raison de la "Ceci est A" comme il semble – codiaf
@ user712533: Cela semble fonctionner pour moi (notez la citations autour de l'expression XPath): 'xmllint --xpath '// événement [name =" Ceci est A "]/state/text()' x.xml' –
Oh, oui, c'était tout, merci – codiaf