This article mainly introduces you to several methods of obtaining numbers in strings using PHP combined with regular expressions. It is very simple and practical. I hope it can help you.
php combines regular expressions to get the numbers in the string
<?php $patterns = "/\d+/"; //第一种 //$patterns = "/\d/"; //第二种 $strs="left:0px;top:202px;width:90px;height:30px"; preg_match_all($patterns,$strs,$arr); print_r($arr); /***************运行结果*********************/ //第一种 Array ( [0] => Array ( [0] => 0 [1] => 202 [2] => 90 [3] => 30 ) ) //第二种 Array ( [0] => Array ( [0] => 0 [1] => 2 [2] => 0 [3] => 2 [4] => 9 [5] => 0 [6] => 3 [7] => 0 ) )
php Gets the number in the specified string $a="era happened 123 happened 12345678 happened"; give a The function can capture the number 12345678 in $a. If not, it returns 0.
Write the function well,
1. Only match numbers with a length of 8 bits
2. If found, return the changed number. If not, return 0
function a($str){ return preg_match('/([0-9]{8})/',$str,$a) ? $a[1] : 0; }
I searched for this on the Internet and tested it and found that it is ok, but if the character length is not d{4} or a fixed length, it will not work
function findNum($str=''){ if(empty($str)){return '';} $reg='/(\d{4}(\.\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 ''; }
Later I found out that there is A
$str=trim($str); if (preg_match('|(\d+)|',$str,$r)) return $r[1];
discovered that this can get numbers of any continuous length. Of course, I saw a lot of them on the Internet, but there was one that worked, so I didn’t test it again.
Related recommendations:
Get the regular expression for numbers in a string
MySQL about strings Problem analysis of numerical sorting_MySQL
PHP method of extracting numbers in string
The above is the detailed content of PHP regular method example to obtain numbers in string. For more information, please follow other related articles on the PHP Chinese website!