我需要像
这样的东西preg_match((element1)(。*?) if - (Quantity:)([^ 0]) -return-TRUE ,$ str);
但是(.*?)
破坏了所有内容,因为他在从(Quantity:)(0)
(Quantity:)([^0])
找到(item2)
之前跳过每个(element1)
。
element1 随机:随机数量:0 element2 random:random数量:0 item1 random:random数量:0 item2 random:random < strong>数量:999
那么我怎么能说php对(Quantity:)([^0])
做严格并返回TRUE,但是如果它(Quantity:)(0)
返回FALSE而不是和我一起玩无限再造{{1} } (Quantity:)(0)
也是?
更新实时预览这就是我想要的http://www.regexr.com/3a3jn这是我不想发生的事情http://www.regexr.com/3a3jq将其作为文字放在链接示例上,而你#&# 39;我会看到我在说什么
{&#34; skuAttr&#34;:&#34; 14:200001438#8; 5:100014064&#34;&#34; skuPropIds&#34;:&#34; 200001438,100014064&#34 ;, &#34; skuVal&#34; {&#34; actSkuBulkCalPrice&#34;:&#34; 3.05&#34;&#34; actSkuBulkPrice&#34;:&#34; 3.05&#34;&# 34; actSkuCalPrice&#34;:&#34; 3.47&#34;&#34; actSkuDisplayBulkPrice&#34;:&#34; US $ 3.05&#34;&#34; actSkuMultiCurrencyBulkPrice&#34;:&#34; 3.05&#34;&#34; actSkuMultiCurrencyCalPrice&#34;:&#34; 3.47&#34;&#34; actSkuMultiCurrencyDisplayPrice&# 34;:&#34; 3.47&#34;&#34; actSkuMultiCurrencyPrice&#34;:&#34; US $ 3.47&#34;&#34; actSkuPrice&#34;:&#34; 3.47&#34;&#34; availQuantity&#34;:999,&#34; bulkOrder&#34;:5,&#34 ;库存&#34;:999,&#34; isActivity&#34;:真,&#34; skuBulkCalPrice&#34;:&#34; 3.32&#34;&#34; skuBulkPrice&#34;:&#34 ; 3.32&#34;&#34; skuCalPrice&#34;:&#34; 3.77&#34;&#34; skuDisplayBulkPrice&#34;:&#34; US $ 3.32&#34;&#34; skuMultiCurrencyBulkPrice&#34;:&#34; 3.32&#34;&#34; skuMultiCurrencyCalPrice&#34;:&#34; 3.77&#34;&#34; skuMultiCurrencyDisplayPrice&# 34;:&#34; 3.77&#34;&#34; skuMultiCurrencyPrice&#34;:&#34; US $ 3.77&#34;&#34; skuPrice&#34;:&#34; 3.77&#34;}},{&#34; skuAttr&#34;:&#34; 14:200001438#8; 5:100014065& #34;&#34; skuPropIds&#34;:&#34; 200001438,100014065&#34;&#34; skuVal&#34; {&#34; actSkuBulkCalPrice&#34;:&#34; 3.05&# 34;,&#34; actSkuBulkPrice&#34;:&#34; 3.05&#34;&#34; actSkuCalPrice&#34;:&#34; 3.47&#34;&#34; actSkuDisplayBulkPrice&#34 ;: &#34; US $ 3.05&#34;&#34; actSkuMultiCurrencyBulkPrice&#34;:&#34; 3.05&#34;&#34; actSkuMultiCurrencyCalPrice&#34;:&#34; 3.47&#34;&#34; actSkuMultiCurrencyDisplayPrice&# 34;:&#34; 3.47&#34;&#34; actSkuMultiCurrencyPrice&#34;:&#34; US $ 3.47&#34;&#34; actSkuPrice&#34;:&#34; 3.47&#34;&#34; availQuantity&#34;:0,&#34; bulkOrder&#34;:5,&#34 ;库存&#34;:0,&#34; isActivity&#34;:真,&#34; skuBulkCalPrice&#34;:&#34; 3.32&#34;&#34; skuBulkPrice&#34;:&#34 ; 3.32&#34;&#34; skuCalPrice&#34;:&#34; 3.77&#34;&#34; skuDisplayBulkPrice&#34;:&#34; US $ 3.32&#34;&#34; skuMultiCurrencyBulkPrice&#34;:&#34; 3.32&#34;&#34; skuMultiCurrencyCalPrice&#34;:&#34; 3.77&#34;&#34; skuMultiCurrencyDisplayPrice&# 34;:&#34; 3.77&#34;&#34; skuMultiCurrencyPrice&#34;:&#34; US $ 3.77&#34;&#34; skuPrice&#34;:&#34; 3.77&#34;}}
答案 0 :(得分:0)
我找到了灵魂
preg_match('/14:200001438#8;5:100014065.*?availQuantity":(\d+)/', $str);
然后我们检查(\d+)
是否等于0或任何数字