代码之家  ›  专栏  ›  技术社区  ›  a1anm

PHP RegEx-获取所有数字

  •  3
  • a1anm  · 技术社区  · 15 年前

    $string = "123456ABcd9999"; 
    $answer = ereg("([0-9]*)", $string, $digits); 
    echo $digits[0]; 
    

    输出“123456”。我希望它输出“1234569999”即所有数字。我怎样才能做到这一点。我试过很多不同的正则表达式,但都搞不懂。

    2 回复  |  直到 15 年前
        1
  •  7
  •   Lauri Lehtinen    15 年前

    你可以用 preg_replace 为了这个, preg_replace("/[^0-9]/", "", $string) 例如。

        2
  •  15
  •   ircmaxell    15 年前

    首先,不要使用ereg(不推荐使用)。其次,为什么不把它换掉:

    $answer = preg_replace('#\D#', '', $string);
    

    请注意 \D 是的倒数 \d \d级 匹配所有十进制数字字符(0-9),因此 \D级 匹配任何 不匹配。。。