我有这样的代码:PHP正则表达式 - 获取所有数字
$string = "123456ABcd9999";
$answer = ereg("([0-9]*)", $string, $digits);
echo $digits[0];
这个输出 '123456'。我希望它输出'1234569999'即。所有的数字。我怎样才能做到这一点。我一直在尝试很多不同的正则表达式的东西,但无法弄清楚。
我有这样的代码:PHP正则表达式 - 获取所有数字
$string = "123456ABcd9999";
$answer = ereg("([0-9]*)", $string, $digits);
echo $digits[0];
这个输出 '123456'。我希望它输出'1234569999'即。所有的数字。我怎样才能做到这一点。我一直在尝试很多不同的正则表达式的东西,但无法弄清楚。
例如,您可以使用preg_replace,preg_replace("/[^0-9]/", "", $string)
。
首先,不要使用ereg(已弃用)。其次,为什么不能取代它:
$answer = preg_replace('#\D#', '', $string);
注意\D
是\d
倒数。所以\d
匹配所有十进制数字字符(0-9),因此\D
匹配\d
不匹配的任何内容...