我有一个XML文档:
<TX value="com.igsapp.wibc.host.TxInfo">
<FORMAT>
<RECORD id="RqHeader">
<ITERATION id="Header" times="1">
<FIELD id="Id"/>
<FIELD id="CAppSeq"/>
<FIELD id="CAGrpSeq"/>
<ITERATION id="Status" times="1">
<FIELD id="System"/>
<FIELD id="SCode"/>
</ITERATION>
<ITERATION id="aaa" times="1">
<FIELD id="bbb"/>
<FIELD id="Sccc"/>
</ITERATION>
</ITERATION>
</RECORD>
</FORMATE>
</TX>我想找到RECORD中的每个ID为RqHeader的RqHeader。我试过了
/TX/FORMAT/RECORD[@id='RqHeader']/ITERATION/FIELD但这只会直接返回RECORD中的三个RECORD元素,而不是ITERATION中的元素。我如何获得所有字段?
发布于 2017-07-21 12:37:17
请求:--我想找到记录中的每个字段,ID为RqHeader。
答案:
//RECORD[@id='RqHeader']//FIELD或者,如果您希望将根层保持在路径中:
/TX/FORMAT/RECORD[@id='RqHeader']//FIELD发布于 2017-07-21 10:41:22
使用//运算符可以跨嵌套级别选择节点。
/TX/FORMAT/RECORD[@id='RqHeader']//ITERATION/FIELD//实际上不是一个运算符,它是简略语法 for /descendant-or-self::node()/。
发布于 2017-07-24 05:49:12
我尝试了下面的表达式,它有效。
/TX/FORMAT/RECORD[@id='RqHeader']//ITERATION/FIELDhttps://stackoverflow.com/questions/45234856
复制相似问题