我正在尝试从字符串中获取数字,但我一直在使用数字而不是数字来获取完整的字符串
$string = "stuff here with id=485&other=123";
preg_match('(id=\d+)',$string,$match);
以上结果如id = 485但我只想要485
任何帮助都会受到赞赏。
答案 0 :(得分:4)
圆括号说要收集什么。您还需要在任一端使用分隔符
preg_match('/id\=(\d+)/',$string,$match);
print_r($match);
/* should be
0=>"id=485",
1=>"485"
*/
echo $match[1];
编辑:看到神秘的答案,parse_str最有可能比preg_match更快。大多数事情都是。
答案 1 :(得分:2)
$string = "stuff here with id=485&other=123";
parse_str(strstr($string, 'id='), $output);
echo $output['id']; // 485
不使用正则表达式。