求正则表达式 只能输入0.001-1范围内的数字,小数位最多3位

如题所述

0.001-1范围内的数字,小数位最多3位
^1$|^0(\.\d{1,3})?$

0到1之间,可以是小数
^1$|^0(\.\d{1,})?$

0到20之间,可以是小数
^(1[0-9]|[0-9])(\.\d{1,})?$|^20$
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-16
^1|0\.\d{0,3}$追问

亲,会场感谢您的解答,不过我试过了,不能达到要求呢。您的这个正则,可以输入英文,并且还不能输入0.2之类的。而我需要 只能输入数字 数字范围是0.001到1

追答

英文?不可能吧。0.2 也是可以输入的。

估计跟你编程语言有关
你用的是什么编程语言?

追问

html 呀 js里面用的,难道是我写错啦,要不你给我写成js吧

追答

那用这个吧:

var g = /^(?:1|0|0\.\d{1,2}|0\.\d[1-9]\d|0\.00[1-9])$/g;
var s = "0.02";
alert(g.test(s))

追问

您好,能麻烦你再帮我写两个吗?
一.0到1之间,可以是小数
二.0到20之间,可以是小数

相似回答