如何编写JavaScript XPath表达式筛选指定条件的list元素
适用于JavaScript的XPath筛选表达式
原始HTML结构
<div class="tree"> <div class="list"> <div class="category">europpeen toys</div> <div class="price">100</div> </div> <div class="list"> <div class="category">us toys</div> <div class="noprice">n/d</div> </div> <div class="list"> <div class="category">books</div> <div class="price">350</div> </div> <div class="list"> <div class="category">sport</div> <div class="noprice">0</div> </div> </div>
需求说明
筛选出同时满足以下两个条件的所有list元素:
- 子元素包含class为
category且文本内容含'toys'关键词的div; - 子元素包含class为
price的div。
目标XPath表达式
//div[@class='list' and div[@class='category' and contains(text(), 'toys')] and div[@class='price']]
表达式逻辑解析
//div[@class='list']:定位文档中所有class为list的div元素;and div[@class='category' and contains(text(), 'toys')]:过滤出包含符合条件的category子元素的list;and div[@class='price']:进一步筛选出同时包含price子元素的list。
预期筛选结果
<div class="tree"> <div class="list"> <div class="category">europpeen toys</div> <div class="price">100</div> </div> </div>
内容的提问来源于stack exchange,提问作者user2224150
相关产品推荐
相关产品推荐

