我直接在root下有这样的xml节点,
<online.png>
<createdBy>admin</createdBy>
<mimeType>image/png</mimeType> // may be here in node itself
<primaryType>nt:file</primaryType>
<content>
<firstName>Vendor</firstName>
<mimeType>image/png</mimeType> // may be here in child
<city>Hyderabad</city>
</content>
</online.png>
从这个节点,如何获取top-parent(这里是gif图像节点),不管使用xpath的mimetype位置,我还想首先根据它的值获取节点名称,如search。即,
stirng xpath = select top-paren where element name has value ('image/')
/ -- "//*[contains(text(),'image/')] select top parent"
任何建议都表示赞赏。
XmlNodeList nodeImages = xmlDoc.SelectNodes("//*[contains(text(),'image/')]");
返回内容节点和gif节点。我只想要gif节点
答案 0 :(得分:0)
假设您的示例中的“ top-parent ”表示<online.png>
,答案非常简单:/*[//*[contains(text(), 'image')]]
- 换句话说,“任何元素直接包含在根元素中,根元素在任何深度包含一个包含文本'image'的元素“。
答案 1 :(得分:0)
如果你想获得第二级元素(即直接放在root下的元素),其中任何子元素包含文本image/
,那么使用xpath:
"/*/*[//*[contains(text(), 'image/')]]"