首页 >后端开发 >php教程 >php如何提取字符串中的数字?php提取字符串中数字的方法总结(附代码)

php如何提取字符串中的数字?php提取字符串中数字的方法总结(附代码)

不言
不言原创
2018-08-22 16:09:2817394浏览

本篇文章给大家带来的内容是关于php如何提取字符串中的数字?php提取字符串中数字的方法总结(附代码) ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

PHP提取字符串中的第一组数字

<?php
    $str=&#39;acc123nmnm4545&#39;;
    if(preg_match(&#39;/\d+/&#39;,$str,$arr)){
       echo $arr[0];
    }
?>

PHP提取字符串中的数字的其它方法

第一种方法,使用正则表达式:

function findNum($str=&#39;&#39;){
$str=trim($str);
if(empty($str)){return &#39;&#39;;}
$reg=&#39;/(\d{3}(\.\d+)?)/is&#39;;//匹配数字的正则表达式
preg_match_all($reg,$str,$result);
if(is_array($result)&&!empty($result)&&!empty($result[1])&&!empty($result[1][0])){
return $result[1][0];
}
return &#39;&#39;;
}

第二种方法,使用in_array方法:

function findNum($str=&#39;&#39;){
$str=trim($str);
if(empty($str)){return &#39;&#39;;}
$temp=array(&#39;1&#39;,&#39;2&#39;,&#39;3&#39;,&#39;4&#39;,&#39;5&#39;,&#39;6&#39;,&#39;7&#39;,&#39;8&#39;,&#39;9&#39;,&#39;0&#39;);
$result=&#39;&#39;;
for($i=0;$i<strlen($str);$i++){
if(in_array($str[$i],$temp)){
$result.=$str[$i];
}
}
return $result;
}

第三种方法,使用is_numeric函数:

function findNum($str=&#39;&#39;){
$str=trim($str);
if(empty($str)){return &#39;&#39;;}
$result=&#39;&#39;;
for($i=0;$i<strlen($str);$i++){
if(is_numeric($str[$i])){
$result.=$str[$i];
}
}
return $result;
}

例如:

//截取字符串中的数字2
    $str =&#39;Q币2个&#39;;
    $result=&#39;&#39;;
    for($i=0;$i<strlen($str);$i++){
        if(is_numeric($str[$i])){
            $result.=$str[$i];
        }
    }
    print_r($result);die;
    //输出结果 2

相关推荐:

PHP提取字符串中数字的方法

php提取字符串中的数字教程

以上是php如何提取字符串中的数字?php提取字符串中数字的方法总结(附代码)的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn