我需要采取所有"//ul/li[not(@*)][count(*)=0]"
,但那些具有<div>
父项的除外。我试过"//not(div)/ul/li[not(@*)][count(*)=0]"
,但不幸的是它不起作用。 有谁知道,我该如何处理? 在此先感谢。Xpath:基于父值的查询中的例外
回答
我想你需要:
//ul[not(parent::div)]/li[not(@*|*)]
或者:
/descendant-or-self::node()[not(self:div)]/ul/li[not(@*|*)]
两个选择这样ul
时,它的根元素,也。
是的,那正是我要找的。 – 2011-03-08 22:57:52
对于正确的答案+1。 – Flack 2011-03-09 05:37:29
使用:
//*[not(self::div)]/li[not(@*) and not(*)]
可略有删节等效:
//*[not(self::div)]/li[not(@*|*)]
+1简洁。 – Flack 2011-03-09 05:38:30
不幸的是, 1)它有一个parcing错误 - 我认为这是因为错过了: 而不是 '// * [not(self :: div)]/li [not(@ *)and not(*)] ' 但是 '// * [not(self :: div)]/li [not(@ *)and not(*)]' 2)用那个正确的表达式我有一个不想要的结果 – 2011-03-10 18:51:46
@CodeJunkie:感谢您的好消息 - 我更正了两个表达式,现在它们在语法上是正确的。至于得到一个不想要的结果,请您提供可以证明这一点的最简单的XML文档(通过编辑您的问题)?也许你错误地要求了你的要求,或者错过了一个额外的要求 – 2011-03-10 20:50:59
- 1. 查询DOMElement的父级 - XPath
- 2. 基于兄弟值的XPath查找
- 3. 查询基于位的值
- 4. 斗志旺盛的XPath查询基于价值
- 5. XPath查询中值
- 6. GeoDjango:基本地理查询的例外
- 7. 案例基于查询
- 8. 的XPath:获取基于父属性
- 9. XPATH查询值
- 10. LINQ查询基于列表中的值?
- 11. 查询中的例外
- 12. 基于doc域中不同值的基于“AND”的Solr查询
- 13. 基于节点值对XPath查询进行分组?
- 14. XML父在SQL查询,XPath的
- 15. XML XPATH查询示例
- 16. XPath查询如何让基于两个属性的一个属性的值
- 17. Xpath 1.0中的映射(键值)查询
- 18. 基于数组值的MySQL select查询
- 19. 基于元值的wordpress查询
- 20. SQL查询显示基于列的值
- 21. ElasticSearch:基于数组值的查询
- 22. SQL:基于列的值嵌套查询
- 23. SQL PIVOT查询,基于值的列
- 24. 基于ID值的XPath过滤器
- 25. 基于多个相邻值的XPATH
- 26. 的Hibernate查询,QueryException例外
- 27. NDB查询基于KeyProperty实例
- 28. 用于处理示例HTML片段的最佳XPath查询
- 29. 如何查询基于它的父节点的属性值XML节点
- 30. JPA查询例外
问得好,+1。请参阅我的答案,以获取选择所需节点的最短XPath表达式。 :) – 2011-03-09 05:40:01