首页 >后端开发 >PHP问题 >php怎么实现只获取数字

php怎么实现只获取数字

藏色散人
藏色散人原创
2021-03-19 09:26:033404浏览

php实现只获取数字的方法:1、使用preg_match_all()函数配合正则表达式获取数字,语法“preg_match_all('/(\d{3}(\.\d+)?)/is',$str,$result);”;2、定义一个包含0到9数字的字符串,并遍历数组,使用“in_array($str[$i],$temp)”语句提取字符串中数字;3、使用“is_numeric”函数获取数字。

php怎么实现只获取数字

本文操作环境:windows7系统、PHP8版,DELL G3电脑

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;
}

【推荐:PHP视频教程

以上是php怎么实现只获取数字的详细内容。更多信息请关注PHP中文网其他相关文章!

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