我有一个像Results 1 - 20 of 400
这样的字符串。
考虑到这个例子,我需要将1
,20
和400
变为3个不同的变量。
我尝试使用此代码但未成功:
preg_match('/\d{1,}/', $text, $array);
答案 0 :(得分:1)
这应该适合你:
$text = "Results 1 - 20 of 400";
preg_match_all('/\d+/', $text, $array);
//^^^^ Note here! 'preg_match_all' not 'preg_match' to get all matches! (Your regex would also work '/\d{1,}/')
print_r($array);
输出:
Array ( [0] => Array ( [0] => 1 [1] => 20 [2] => 400 ) )
有关preg_match_all()
的详情,请参阅手册:http://php.net/manual/en/function.preg-match-all.php
从那里引用:
preg_match_all - 执行全局正则表达式匹配