我正在尝试从字符串中获取数字,但我一直在获取带有数字而不是单独的数字的完整字符串
$string = "stuff here with id=485&other=123";
preg_match('(id=\d+)',$string,$match);
上面的结果像 id=485 但我只想要 485
任何帮助将不胜感激。
我正在尝试从字符串中获取数字,但我一直在获取带有数字而不是单独的数字的完整字符串
$string = "stuff here with id=485&other=123";
preg_match('(id=\d+)',$string,$match);
上面的结果像 id=485 但我只想要 485
任何帮助将不胜感激。
括号说明要收集什么。您还需要在两端使用分隔符
preg_match('/id\=(\d+)/',$string,$match);
print_r($match);
/* should be
0=>"id=485",
1=>"485"
*/
echo $match[1];
编辑:见神秘的答案,parse_str 很可能比 preg_match 快。大多数事情都是。
$string = "stuff here with id=485&other=123";
parse_str(strstr($string, 'id='), $output);
echo $output['id']; // 485
不使用正则表达式。