从PHP字符串中提取自定义数字

时间:2017-04-04 18:06:33

标签: php regex string floating-point

我想提取:

来自PHP字符串8.4

ASD - 8.4 - iOS - P-CT 来自8.3.1

ASD - 8.3.1 - Android - P-QL

尝试使用floatval($var),但它不会一直有效 - 例如,如果我想将它用于我的两个用例。有没有其他方法从PHP字符串中获取此类自定义数字?

2 个答案:

答案 0 :(得分:3)

explode()可能是你最好的选择。将分隔符设置为-,然后您将返回四个部分的数组:

$str = 'ASD - 8.4 - iOS - P-CT';
$parts = explode(' - ', $str);
print_r($parts);

输出:

Array
(
    [0] => ASD
    [1] => 8.4
    [2] => iOS
    [3] => P-CT
)

答案 1 :(得分:2)

使用正则表达式从字符串中选择目标数字。通过php preg_match()运行你的正则表达式。

$str = "ASD - 8.4 - iOS - P-CT";
preg_match("/[\d.]+/", $str, $matches);
echo $matches[0];

demo

中检查代码结果