本篇文章給大家帶來的內容是關於php如何提取字串中的數字?php提取字串中數位方法總結(附代碼) ,有一定的參考價值,有需要的朋友可以參考一下,希望對你有所協助。
PHP提取字串中的第一組數字
<?php $str='acc123nmnm4545'; if(preg_match('/\d+/',$str,$arr)){ echo $arr[0]; }?>
PHP提取字串中的數位其它方法
第一種方法,使用Regex:
function findNum($str=''){$str=trim($str);if(empty($str)){return '';}$reg='/(\d{3}(\.\d+)?)/is';//匹配數位Regexpreg_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方法:
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函數:
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;}
例如:
//截取字串中的數字2 $str ='Q幣2個'; $result=''; for($i=0;$i<strlen($str);$i++){ if(is_numeric($str[$i])){ $result.=$str[$i]; } } print_r($result);die; //輸出結果 2