【问题标题】:xpath exploding integers and comparing valuesxpath爆炸整数和比较值
【发布时间】:2015-04-26 17:22:50
【问题描述】:

我需要创建一个 xpath 查询来查找反馈评分为 98% 以上的书籍,但亚马逊会返回一个估计的反馈,因此它不是返回字符串 '98',而是返回 '98-100%'

有没有一种简单的方法可以从'98-100%' 字符串中提取第一个数字,以便我可以使用 xpath 进行比较?

以下是我正在使用的当前查询。

foreach($xml->xpath("//c:LowestOfferListing[./c:Qualifiers/c:SellerPositiveFeedbackRating = '98-100%']") as $listing) print_r($listing)

理想情况下,我想要这样的东西:

foreach($xml->xpath("//c:LowestOfferListing[./c:Qualifiers/c:SellerPositiveFeedbackRating > 98]") as $listing) print_r($listing);

【问题讨论】:

标签: php xml xpath


【解决方案1】:

假设反​​馈评分总是以包含- 作为分隔符的范围形式,您可以试试这个xpath(为便于阅读而格式化):

//c:LowestOfferListing[
        ./c:Qualifiers
         /c:SellerPositiveFeedbackRating[
                substring-before(., '-') >= 98
        ]
]

供参考:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-08
    • 1970-01-01
    • 2016-05-18
    • 2012-08-23
    • 1970-01-01
    相关资源
    最近更新 更多