【问题标题】:PHP preg_match beetween infinity solid rulesPHP preg_match beetween infinity 可靠规则
【发布时间】:2015-02-16 09:36:43
【问题描述】:

我需要类似的东西

preg_match((element1)(.*?)if-(数量:)([^0])-return-TRUE, $str);

但是(.*?) 毁了一切,因为他在从另一个元素中找到(Quantity:)([^0]) 之前跳过了每个(Quantity:)(0),例如(item2) 旁边的(element1)

element1 random:random Quantity:0 element2 random:random Quantity:0 item1 random:random Quantity:0 item2 random:random Quantity:999强>

那么我怎么能说 php 对 (Quantity:)([^0]) 执行严格并返回 TRUE,但如果是 (Quantity:)(0) 返回 FALSE 而不是和我一起玩无限 regonising (Quantity:)(0) 作为 (.*?) 呢?

更新实时预览这是我想要的http://www.regexr.com/3a3jn这是我不想发生的http://www.regexr.com/3a3jq将它作为文本链接示例,你会看到我在说什么关于

{"skuAttr":"14:200001438#8;5:100014064","skuPropIds":"200001438,100014064","skuVal":{"actSkuBulkCalPrice":"3.05","actSkuBulkPrice":"3.05" ,"actSkuCalPrice":"3.47","actSkuDisplayBulkPrice":"美国 $3.05","actSkuMultiCurrencyBulkPrice":"3.05","actSkuMultiCurrencyCalPrice":"3.47","actSkuMultiCurrencyDisplayPrice":"3.47","actSkuMultiCurrencyPrice":"US $3.47","actSkuPrice":"3.47","availQuantity":999,"bulkOrder":5,"inventory":999,"isActivity":true,"skuBulkCalPrice":"3.32","skuBulkPrice":"3.32" ,"skuCalPrice":"3.77","skuDisplayBulkPrice":"美国 $3.32","skuMultiCurrencyBulkPrice":"3.32","skuMultiCurrencyCalPrice":"3.77","skuMultiCurrencyDisplayPrice":"3.77","skuMultiCurrencyPrice":"US $3.77","skuPrice":"3.77"}},{"skuAttr":"14:200001438#8;5:100014065","skuPropIds":"200001438,100014065","skuVal":{"actSkuBulkCalPrice":" 3.05","actSkuBulkPrice":"3.05","actSkuCalPrice":"3.47","actSkuDisplayBulkPrice":"US $3.05","actSkuMultiCurrencyBulkPrice":"3.05","actSkuMultiCurrencyCalPrice":"3.47","actSkuMultiCurrencyDisplayPrice":"3.47","actSkuMultiCurrencyPrice":"US $3.47","actSkuPrice":"3.47","availQuantity":0,"bulkOrder":5,"inventory":0,"isActivity":true,"skuBulkCalPrice":"3.32","skuBulkPrice":"3.32" ,"skuCalPrice":"3.77","skuDisplayBulkPrice":"美国 $3.32","skuMultiCurrencyBulkPrice":"3.32","skuMultiCurrencyCalPrice":"3.77","skuMultiCurrencyDisplayPrice":"3.77","skuMultiCurrencyPrice":"US $3.77","skuPrice":"3.77"}}

【问题讨论】:

  • 您的要求不明确,请向我们展示一些示例字符串和预期结果。

标签: php preg-match infinity


【解决方案1】:

我找到了灵魂

preg_match('/14:200001438#8;5:100014065.*?availQuantity":(\d+)/', $str);

接下来我们检查(\d+)是否等于0或任何数字

现场示例 http://www.regexr.com/3a3k0

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-20
    • 2013-04-05
    • 2014-06-28
    相关资源
    最近更新 更多