php提取字符串中的数字
转载
php提取字符串中的数字(三种方法)
2016-06-20 20:28:58 峰尚 1,755 次 0
如何使用PHP将字符串中的数字提取出来的功能做了一个小总结,总结三种方法如下:
第一种方法,使用正则表达式:
1 2 3 4 5 6 7 8 9 10
|
function findNum($str=''){ $str= trim($str); if( empty($str)){return '';} $reg='/(\d{3}(\.\d+)?)/is';//匹配数字的正则表达式 preg_match_all($reg,$str,$result); if( is_array($result)&&! empty($result)&&! empty($result[1])&&! empty($result[1][0])){ return $result[1][0]; } return ''; }
|
第二种方法,使用in_array方法:
1 2 3 4 5 6 7 8 9 10 11 12
|
function findNum($str=''){ $str= trim($str); if( empty($str)){return '';} $temp= array('1','2','3','4','5','6','7','8','9','0'); $result=''; for($i=0;$i< strlen($str);$i++){ if( in_array($str[$i],$temp)){ $result.=$str[$i]; } } return $result; }
|
第三种方法,使用is_numeric函数:
1 2 3 4 5 6 7 8 9 10 11
|
function findNum($str=''){ $str= trim($str); if( empty($str)){return '';} $result=''; for($i=0;$i< strlen($str);$i++){ if( is_numeric($str[$i])){ $result.=$str[$i]; } } return $result; }
|
$arr中放置的就是取到的数字,只取一个的话 可以把preg_match_all换成preg_match