返回第一个数字的正则表达式


Regular expression that returns first number

我正在尝试创建正则表达式,该表达式选择除第一个找到的数字之外的所有内容。例如,在此字符串中:abc,abc-145,dsa,26,dsa我需要创建正则表达式,它将返回除数字145之外的所有内容。换句话说,我需要常规,我可以在 php preg_replace中使用,我只会得到数字 145

您可以使用

preg_match()返回第一个匹配结果。

$str = 'abc,abc-145,dsa,26,dsa';
preg_match('~'d+~', $str, $match);
echo $match[0]; //=> "145"

令牌'd匹配数字。 +将此令牌量化"一次或多次"。

如果您希望使用preg_replace()来获得相同的结果:

$str = preg_replace('~'D*('d+).*~', '$1', $str);