在不同长度的字符后获取SubStrings

时间:2016-01-31 04:14:36

标签: php string substring

我正在尝试编写一个允许我在字符串后面取特定字符的代码。这个字符串的两个例子是:

  

End Table全新50美元   26 “X18” X18"   需要大会。   黑色。   我有一个小仓库的家具   在CL搜索栏中查看我要出售的其他物品类型2786741   点击“此用户投放更多广告”按钮   来电或发短信   显示联系信息

示例2:

  

Rocker Chair全新售价185美元       30 “X36” X37" 。       我有一个小仓库的家具       要查看其他项目,我在CL搜索栏中输入2786741或       点击“此用户投放更多广告”按钮       通话或短信显示       显示联系信息

现在我想要做的只是拉出价格编号并将其设置为自己的单独字符串。我不能使用像substr($data, strpos($description, "$") + 2);这样的东西,因为价格的长度会有所不同。所以我有点不知所措。任何帮助当然会非常感激。谢谢。

2 个答案:

答案 0 :(得分:0)

substr($data,strpos($description," ",strpos($description,"$")) - strpos($description,"$"))

这应该在美元符号后找到第一个空格的轨迹并减去美元符号的轨迹;您可能需要添加或减去1以使其正确排列

答案 1 :(得分:0)

您可以使用php preg_match函数来获取价格。示例:

$str = 'End Table Brand New $50 26"x18"x18" Needs Assembly. Black. I have a small warehouse of furniture To see the other items I have for sale type 2786741 in CL search bar or Hit the "more ads by this user" button Call or text show contact info';
if (preg_match('/\$([\d,.]+)/', $str, $matches)) {
    $price = $matches[1];
    echo $price;
}