给定以下示例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)]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句