我得到了这个 XML:<iet:aw-data> <iet:metadata filter=""/> <iet:message-resource> <iet:message>תוכניות אחרות שאינן פדראליים</iet:message> <iet:customer id="1"/> <iet:code>edi.claimfilingindicator.11</iet:code> <iet:locale>iw_IL</iet:locale> </iet:message-resource> <iet:message-resource> <iet:message>ספק מועדף הארגון (PPO)</iet:message> <iet:customer id="1"/> <iet:code>edi.claimfilingindicator.12</iet:code> <iet:locale>iw_IL</iet:locale> </iet:message-resource> . . .</iet:aw-data>我想建立一个表达式来获取所有节点与code和message它包含了他们中的每一个给定的参数。到目前为止,我所做的是这样的表达:String exp = "//*[local-name()='message-resource']//*[local-name()='code'][contains(text(), 'edi')]"现在我想将该message字段作为另一个条件添加到这个表达式中,我需要这方面的帮助。
2 回答
Smart猫小萌
TA贡献1911条经验 获得超7个赞
您可以使用子路径作为谓词。假设您要选择包含“某些消息子字符串”code
的消息资源message
:
//*[local-name()='message-resource' and ./*[local-name()='message' and contains(text(), 'some message substring')]]//*[local-name()='code'][contains(text(), 'edi')]
繁星点点滴滴
TA贡献1803条经验 获得超3个赞
我的版本
//*[local-name()='message-resource']/*[local-name()='code' and contains(text(), 'edi')]/../*[local-name()='message' and contains(text(), 'PPO')]/..
只需将“PPO”替换为您在消息中搜索的内容。
添加回答
举报
0/150
提交
取消