微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

XPATH / PHP麻烦last()

我已经尝试过在线阅读各种教程,但是在解决这个问题上却一事无成,这很容易描述,但是我无法想到一个解决方案.

这是一些示例XML

<AAA>
    <BBB>
        <CCC>1</CCC>
        <CCC>2</CCC>
    </BBB>
    <BBB>
        <CCC>3</CCC>
        <CCC>4</CCC>
    </BBB>
</AAA>

我希望能够选择最后一个< CCC>换句话说,我希望能够拉出< CCC> 2< CCC> < CCC> 4< CCC>.我已经尝试了无数表达式来实现这一目标,但是我能做的最好的就是获得最后的< CCC> (包含4个).

似乎// BBB / CCC [last()]应该工作,但显然它选择了所有BBB子代的CCC(总共4个),然后才处理last()谓词-因此只返回一个元素< CCC> 4< / CCC>

这真让我发疯!谁能给我看看光?非常感谢!!

解决方法:

/AAA/BBB/CCC[position() = last()]

// BBB / CCC [position()= last()]和// CCC [position()= last()]似乎也起作用.我在这里找到了一个不错的xpath测试站点http://www.whitebeam.org/library/guide/TechNotes/xpathtestbed.rhtm

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐