我正在尝试使用preg_match()
来匹配任何数量的第一次出现,直到第一个空格。
$var = '2275073540 blah blah blah';
preg_match('/[0-9 ]/', $var, $matches);
我希望$ matches [0]返回2275073540
。
答案 0 :(得分:5)
preg_match('/(\d+)/', $var, $matches);
| ^-|-------------- one or more digits
^ ^-------------- capturing group
答案 1 :(得分:3)
答案 2 :(得分:2)
这匹配到(并且不包括)第一个空格的任何内容:
preg_match('/^[^ ]+/', $var, $matches);
虽然它不会将输入限制为数字。为了那个原因。你会用:
preg_match('/^[[:digit:]]+/', $var, $matches);
或者像Cthulhu建议的那样,使用这个角色类的简写。