6
XPath contains(text(),'some string')与具有多个Text子节点的节点一起使用时不起作用
我对dom4j包含的Xpath有一个小问题... 可以说我的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元素成为具有四个标签的复合元素,其中两个 [Text = 'XYZ'][BR][BR][Text = 'ABC'] 我认为查询仍然应该返回该元素,因为它应该找到该元素并运行包含它的元素,但是它没有…… 以下查询返回该元素,但返回的内容远远超过该元素,它还返回父元素……这是问题所不希望的…… //*[contains(text(),'ABC')] 有谁知道xpath查询会只返回Elements <Street/>和<Comment/>吗?