/^[\-\+]?([1-9]\d*¦0¦[1-9]\d{0,2}(,\d{3})*)(\.\d+)?([Ee][\-\+]?\d+)?$/;
^=开始,之前不能有其他的字符
[\-\+]?表示是减号或者是加号,或者都没有
([1-9]\d*¦0¦[1-9]\d{0,2}(,\d{3}))                                              
表示(很多个1,2,3..9 或者  0     或者 ((零个到两个) 1-9  接着 很多个(,(1,2,3..9)) )   )一个或没有如:12345,       0      1,346,678,123(\.\d+)? 表示 (.后面接着一个或以上个数字(0,1,2..9))一个或没有如: .0135    或者没有([Ee][\-\+]?\d+) 表示((E或者e) (可以是加号减号或没有) 接着一个或以上的数字)一个或没有$结束

解决方案 »

  1.   

    这段东西其实是在做科学计数法的判断,但是不能够包含零(除非他的值就是零)
    如:
    -1259515E-3   ok
    1,345,667E+3  ok
    1,345,664     ok
    0             ok1,204,567    not ok    
      

  2.   

    哎呀,错了。应该可以包含零。我看错了1,204,567     is ok
      

  3.   

    谢谢 ChDw(米)的回答!
      如果我要判断一个值是否全为数字(0 - 9),不包括小数点
    或一个值是否全为字符(a - z 和 A - Z)
      那这个规则表达式该如何写?