为了账号安全,请及时绑定邮箱和手机立即绑定

XPath包含(text(),'some string')与具有多个Text子节点的节点一起使用时

XPath包含(text(),'some string')与具有多个Text子节点的节点一起使用时

ITMISS 2019-08-06 13:12:50
XPath包含(text(),'some string')与具有多个Text子节点的节点一起使用时不起作用我有一个小问题,Xpath包含dom4j ...让我们说我的XML是<Home>     <Addr>         <Street>ABC</Street>         <Number>5</Number>         <Comment>BLAH BLAH BLAH <br/><br/>ABC</Comment>     </Addr></Home>假设我想在给定根元素的文本中找到所有具有ABC的节点...所以我需要写的xpath就是//*[contains(text(),'ABC')]然而,这不是Dom4j返回的......这是dom4j问题还是我理解xpath如何工作。因为该查询仅返回Street元素而不返回Comment元素。DOM使Comment元素成为具有四个标记2的复合元素[Text = 'XYZ'][BR][BR][Text = 'ABC']我会假设查询应该仍然返回元素,因为它应该找到元素并运行包含但它不会......以下查询返回元素,但它返回的远远多于元素,它还返回父元素...这对问题是不可取的...//*[contains(text(),'ABC')]是否有任何人知道XPath查询会只返回元素<Street/>和<Comment/>?
查看完整描述

3 回答

?
烙印99

TA贡献1829条经验 获得超13个赞

[contains(text(),'')]只返回true或false。它不会返回任何元素结果。


查看完整回答
反对 回复 2019-08-06
  • 3 回答
  • 0 关注
  • 1634 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信