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