这句话是验证输入的价格但是有点问题,如果全部输入0 都可以,
我要的合法应该是 0.001 0.01 1 反正只要有数字大于0的就可以
我现在就是输入0.000 0.00 这样的都可以, 我怎么得到如果有小数则得到后面的是否全部大于0
如果没有. 则判断所有数字是否大于0
因为价格有可能是0.多少 或者是整数
17 个解决方案
#1
一看正则表达式就头晕,帮顶!
#2
改为小数后面至少有一个不为0就可以了
#3
^(([1-9][0-9]*)(\.[0-9]{1,3})|(0.[]1-9){1,4})?$
你试试吧
你试试吧
#4
^(?!0\d)\d+(\.(?!0+$)\d{1,3})?$
#5
^(?!0\d)\d+(\.(?!0+$)\d{1,3})?$
正解太谢谢 逍遥兄
正解太谢谢 逍遥兄
#6
这位朋友的提示我正则少一个] 看了一下不太清楚 呵呵, 现在逍遥解决了
#7
^(?!0\d)\d+(\.(?!0+$)\d{1,3})?$ 逍遥兄
还是有点问题哦我输入 1.000过不了呀, 刚没有测试到, 应该是可以的呀
只要所有数字大于0就好
还是有点问题哦我输入 1.000过不了呀, 刚没有测试到, 应该是可以的呀
只要所有数字大于0就好
#8
1.000,小数点后面都是0 可以么?
#9
那这样
^(?!0\d)(?![0.]+$)\d+(\.\d{1,3})?$
^(?!0\d)(?![0.]+$)\d+(\.\d{1,3})?$
#10
可以。。。。
#11
逍遥兄
这样又面临一个问题直接输入一个0 又不可以, 是应该是如果直接输入一个0 可以两个以上就不可以包括2个。 如果带小数则第一位可以为0 然后判断后面的是不是全部大于0
^(?!0\d)(?![0.]+$)\d+(\.\d{1,3})?$ 可以输入 1.000 1.00 这样是对的
可是直接输入0 就不可以了, 麻烦再看看
这样又面临一个问题直接输入一个0 又不可以, 是应该是如果直接输入一个0 可以两个以上就不可以包括2个。 如果带小数则第一位可以为0 然后判断后面的是不是全部大于0
^(?!0\d)(?![0.]+$)\d+(\.\d{1,3})?$ 可以输入 1.000 1.00 这样是对的
可是直接输入0 就不可以了, 麻烦再看看
#12
^(0\\.(?!0+$)\\d{1,3}||([1-9][0-9]*(\\.\\d{1,3})?))$
#13
没太理解。你希望的规则如何的。哪些是可以的?
0或是大于0的,但0不能写成0.000或00.000这样的意思?
0或是大于0的,但0不能写成0.000或00.000这样的意思?
#14
如果是我猜测的意思
^(?!0\d)(?!0\.0+$)\d+(\.\d{1,3})?$
^(?!0\d)(?!0\.0+$)\d+(\.\d{1,3})?$
#15
用这个:
^(0(\\.(?!0+$)\\d{1,3})?||([1-9][0-9]*(\\.\\d{1,3})?))$
^(0(\\.(?!0+$)\\d{1,3})?||([1-9][0-9]*(\\.\\d{1,3})?))$
#16
可以了谢谢
#17
结贴了谢谢.
#1
一看正则表达式就头晕,帮顶!
#2
改为小数后面至少有一个不为0就可以了
#3
^(([1-9][0-9]*)(\.[0-9]{1,3})|(0.[]1-9){1,4})?$
你试试吧
你试试吧
#4
^(?!0\d)\d+(\.(?!0+$)\d{1,3})?$
#5
^(?!0\d)\d+(\.(?!0+$)\d{1,3})?$
正解太谢谢 逍遥兄
正解太谢谢 逍遥兄
#6
这位朋友的提示我正则少一个] 看了一下不太清楚 呵呵, 现在逍遥解决了
#7
^(?!0\d)\d+(\.(?!0+$)\d{1,3})?$ 逍遥兄
还是有点问题哦我输入 1.000过不了呀, 刚没有测试到, 应该是可以的呀
只要所有数字大于0就好
还是有点问题哦我输入 1.000过不了呀, 刚没有测试到, 应该是可以的呀
只要所有数字大于0就好
#8
1.000,小数点后面都是0 可以么?
#9
那这样
^(?!0\d)(?![0.]+$)\d+(\.\d{1,3})?$
^(?!0\d)(?![0.]+$)\d+(\.\d{1,3})?$
#10
可以。。。。
#11
逍遥兄
这样又面临一个问题直接输入一个0 又不可以, 是应该是如果直接输入一个0 可以两个以上就不可以包括2个。 如果带小数则第一位可以为0 然后判断后面的是不是全部大于0
^(?!0\d)(?![0.]+$)\d+(\.\d{1,3})?$ 可以输入 1.000 1.00 这样是对的
可是直接输入0 就不可以了, 麻烦再看看
这样又面临一个问题直接输入一个0 又不可以, 是应该是如果直接输入一个0 可以两个以上就不可以包括2个。 如果带小数则第一位可以为0 然后判断后面的是不是全部大于0
^(?!0\d)(?![0.]+$)\d+(\.\d{1,3})?$ 可以输入 1.000 1.00 这样是对的
可是直接输入0 就不可以了, 麻烦再看看
#12
^(0\\.(?!0+$)\\d{1,3}||([1-9][0-9]*(\\.\\d{1,3})?))$
#13
没太理解。你希望的规则如何的。哪些是可以的?
0或是大于0的,但0不能写成0.000或00.000这样的意思?
0或是大于0的,但0不能写成0.000或00.000这样的意思?
#14
如果是我猜测的意思
^(?!0\d)(?!0\.0+$)\d+(\.\d{1,3})?$
^(?!0\d)(?!0\.0+$)\d+(\.\d{1,3})?$
#15
用这个:
^(0(\\.(?!0+$)\\d{1,3})?||([1-9][0-9]*(\\.\\d{1,3})?))$
^(0(\\.(?!0+$)\\d{1,3})?||([1-9][0-9]*(\\.\\d{1,3})?))$
#16
可以了谢谢
#17
结贴了谢谢.