Le contenu de cet article explique comment extraire des nombres à partir de chaînes en PHP ? Résumé de la méthode d'extraction de nombres dans des chaînes en PHP (avec code), qui a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer, j'espère que cela vous sera utile.
PHP extrait le premier groupe de nombres dans la chaîne
<?php $str='acc123nmnm4545'; if(preg_match('/\d+/',$str,$arr)){ echo $arr[0]; } ?>
Autres méthodes pour PHP pour extraire les nombres dans la chaîne
La première méthode consiste à utiliser Expression régulière :
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 ''; }
La deuxième méthode, utilisez la méthode 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; }
La troisième méthode, utilisez la fonction 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; }
Par exemple :
//截取字符串中的数字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
Recommandations associées :
Méthode PHP d'extraction de nombres dans des chaînes
Tutoriel php pour extraire des nombres d'une chaîne
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!