求正则表达式。匹配小数无关紧要,最多两位小

问:求一个正则表达式。要求:小数无关紧要,最多两位小数,必需大于零,急,在线等
答:^(?!0+(?:\.0+)?$)(?:[1-9]\d*|0)(?:\.\d{1,2})?$
 
回收否认式向前查察后
(?!……)  是否认式向前看
(?:……)  后向引用内容
 0+(?:\.0+)?就是说当以0开头时后头要接上“.”而且要有一个以上的0接在“.”后 如00.0   0.0   000
 (?!0+(?:\.0+)?$) 就是都不匹配上式开头 如00开头的都不能匹配
 [1-9]\d*|0 匹配一个非0数字开头的数字或匹配一个0。 如: “1000154” “0”
 (?:\.\d{1,2})? 匹配以“.”开头而且后头要有一到两个数字。 如: “.01” “.00”  “.90”

附件下载/演示源码:
【 2.htm 】 10.36KB

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/7975.html