Wednesday, November 22, 2006

正则表达式-验证数字合法性

验证数字合法性的正则表达式:
^[\+|-]?[0-9]{1,3}((\,[0-9]{3}

)*|[0-9]*)(\.[0-9]*)?$
数字前可以有+/-符号,数字可采用三位一撇格式,可以有小数。

如果限定小数位数为2位以内:
^[\+|-]?[0-9]{1,3}((\,[0-9]{3})*|[0-9]*)(\.[0-9]{0,2})?$

如果不允许三位一撇表达:
^[\+|-]?[0-9]{1,3}[0-9]*(\.[0-9]{0,2})?$

注意:"\d"和"[0-9]"的不同在于,\d支持Unicode中所有数字表达形式,例如中文全角的"123", 所以一般只采用"[0-9]"的形式。

No comments: