xpath - 如何使用 xpath 查找重复/非不同值
问题描述
给定以下示例 html:
<products>
<product>
<sku>10021</sku>
</product>
<product>
<sku>10021</sku>
</product>
<product>
<sku>10022</sku>
</product>
<product>
<sku>10023</sku>
</product>
<product>
<sku>10023</sku>
</product>
</products>
我知道如何使用 xpath: 找到不同的 sku 值distinct-values(//sku)
,它将输出:
10021
10022
10023
但是我怎么能得到那些不明显的,所以:
10021
10023
我正在使用 xidel,所以 XPath 3 很好。但是,如果它可以通过 XPath 1 以某种方式完成,最好不使用 XSLT,我也非常想阅读有关它的内容。
解决方案
您可以尝试这个来获取sku
文本至少等于另一个文本的节点sku
:
distinct-values(//sku[.=following::sku])
您也可以像这样在 XPath 1 中执行此操作:
//sku[.=preceding::sku and not(.=following::sku)]
推荐阅读
- python - 我可以将我的 selenium 脚本放入 python gui 应用程序吗?
- ignite - 为什么我的 ignite 应用程序会抛出异常,例如“java.lang.IllegalStateException:缓存已关闭或销毁:”
- azure - 是否可以在 Azure DevOps 的工作项类型中创建自定义工作项类型?
- python - Python Selenium Recaphta 我不是机器人 - 如何绕过
- django - 想将 mongodb docker 服务与我的 django 应用程序连接起来
- html - 任何电子邮件客户端的 HTML 电子邮件按钮样式
- clojure - Project Euler #68 wrong answer for simple algorithm
- ios - AWS Recognition 使用 IOS Swift 比较人脸
- python - Python 正则表达式 - OSError:[Errno 22] 无效参数:
- javascript - 打印日期两次