我有一个XML结构,如下所示:
<a>
<b>
<c>123</c>
<d>
<e>
<f>
<g>1</g>
</f>
<h>
<i>2</i>
</h>
<j>
<k>
<l>1.2</l>
</k>
<m>
<n>34</n>
<o>String</o>
</m>
</j>
</e>
</d>
</b>
<b>
<c>456</c>
<d>
<e>
<f>
<g>7</g>
</f>
<h>
<i>6</i>
</h>
<j>
<k>
<l>4.5</l>
</k>
<m>
<n>43</n>
<o>String 2</o>
</m>
</j>
</e>
</d>
</b>
</a>
所有节点都是重复的和我不确定他们重复的顺序 例如:节点c:123或456在我的回复中,任何东西都可能排在第一位
我想比较一下,如果C = 123则g = 1,如果c = 456那么g = 7 以及进入节点b的所有后续节点
到目前为止,我已尝试过此选项,但无法断言g
的值选项: / A / B / [@ C = 123] / A / B / d / E / F / G /文本()= 1
答案 0 :(得分:0)
这样的事情:
boolean(/a/b/c[.="123"]/following::g[1] = "1")
和
boolean(/a/b/c[.="456"]/following::g[1] = "7")