$expression="023,,55";
echo (preg_match("^\d+(\,\d+)*$",$expression))?1:2;提示:
Warning: No ending delimiter '^' found in G:\htdocs\_self\txtdb\debug.php on line 3我用
echo (preg_match("/^[0-9\,]+[0-9]*$/",$expression))?1:2;
但是他匹配了"12,,34"和"34,56,"

解决方案 »

  1.   

    $s = "0,1,2";
    $s = "29";
    $s = "29,";
    preg_match("/^\d[\d,]*/",$s,$regs);
    print_r($regs);
      

  2.   

    xuzuning(唠叨) 的有问题.$s="3x9";
    echo (preg_match("/^\d[\d,]*/",$expression))?1:2;
    也是配配的.正则啊,真是麻烦的东西.
      

  3.   

    那就改改
    $s="3x9";
    echo (preg_match("/^\d[\d,]+/",$expression.","))?1:2;真不知道你要干什么?