数字长度限制的数字的正则表达式,包括小数

时间:2017-08-17 14:08:23

标签: jquery regex validation input

我在验证一个文本框时遇到问题,该文本框的数字最多为11位,包括十进制和十进制后的两位数(如果有的话)。关于jquery中的keyup。

我使用这个正则表达式 / ^(\ d +)?([。]?\ d {0,2})?$ / g 来验证数字和带两位数的小数,但我不知道如何将数字最大值限制为11。

我已将输入类型编号 maxlength 一起使用,但它无效。

Fiddle Is here

HTML

Method.max(name("cn"))

的jQuery

<input type="number" />

像这样的值

  

64123841.33 123456789.1,12345678901,   1.22,

请帮我解决这个问题。

2 个答案:

答案 0 :(得分:3)

^\d{0,8}\.\d{1,2}$|^\d{0,11}$

here是工作示例

答案 1 :(得分:1)

使用前瞻来测试长度:

/^(?=.{1,11}$)\d+(?:\.\d{1,2})?$/

(?=.{1,11}$)是一个预测,确保我们有1个最多11个字符

(?:\.\d{1,2})?是一个可选的非捕获组,允许1或2个十进制