xml – Xpath如何根据订单选择元素并依赖于它的存在

前端之家收集整理的这篇文章主要介绍了xml – Xpath如何根据订单选择元素并依赖于它的存在前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如何根据订单选择一个元素并依赖于它在XPath中的存在?
例如,如果存在,如何选择最佳质量的视频.

<VIDEOS>
    <LOW_RES>video_L.flv</LOW_RES>
    <HI_RES>video_H.flv</HI_RES>
    <HD/>
</VIDEOS>

这应该返回video_H.flv,因为高清版本不存在

这种情况可以存在(视频名称可以是随机的):

<VIDEOS>
    <LOW_RES>video_L.flv</LOW_RES>
    <HI_RES>video_H.flv</HI_RES>
    <HD>video_hd.mp4</HD>
</VIDEOS>

这应该返回video_hd.mp4,因为hd版本存在.
非常感谢.

解决方法

使用:

/*/HD[text()]
|
 /*/HI_RES[text() and not(../HD/text())]
|
 /*/LOW_RES[text() and not(../HD/text()) and not(../HI_RES/text())]

猜你在找的XML相关文章