php - XPATH - 选择节点范围

标签 php xpath

我有以下代码:

<div id="mydiv">
    <h1>Some title</h1>
    <p>don't select me</p>
    <p>select me 1</p>
    <p>select me 2</p>
    <p>select me 3</p>
    <p>don't select me</p>
</div>

我需要选择 p[2] 到 p[4]。

试过这段代码,但没有成功:

'.//*[@id="mydiv"]/p[preceding-sibling::p[4] and following-sibling::p[2]]'

最佳答案

你可以试试:

'//*[@id='mydiv']/p[position()>1 and position()<5]'


或者,您的初始代码可以更改为:

'//*[@id="mydiv"]/p[preceding-sibling::p and following-sibling::p]'


因此所有具有前后 p 节点的 p 都将被选中(即 p[2] 到 p[4])。< br/>

关于php - XPATH - 选择节点范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10289397/

相关文章:

php - Yii2 需要更新验证

php - 如何在Opencart 2.3x版本的模板文件中加载 Controller

python - 如何解决 lxml 中已删除的 cssselect 包的问题?

c# - XPath 选择匹配的节点

php - 如何在 PHP 中返回 ajax 调用的错误状态?

php - fatal error : Uncaught CurlException: 26: failed creating formpost data thrown

php - Laravel 验证 : exists two column same row

perl - 如何传递存储在变量中的xpath?

ruby - 我如何访问 pop ui 按钮?

xml - XSLT : Parse with multiple same name