我需要编写一个简单的表达式,但我真的不太擅长使用正则表达式。
我的限制是:最多 1 个数字。最多 4 位数字,允许更少
这些应该通过。
1
1.2
1.23
1.234
1.2345
这些应该会失败。
10
10.1
1.23456
我最接近的是 \d\.\d{0,4}
,但它没有选择 1,而是选择了 0.1
和 1.2345
来自第二个列表。
我还应该说明这是在用户输入时进行的检查,如果这会产生影响的话。
编辑
由于有如此多的回复涵盖了几个不同的要点,我觉得我应该再具体说明一些,尤其是因为有人可能会为我指出更好的路径。我在网络表单上使用它。它只需要在用户键入时允许这些条件,所以如果他们有“4”并尝试输入“1”,它不会允许,但如果他们输入“。”就会允许。第一的。或者在他们执行类似“2.5345”的操作后将不允许输入,因为这是小数点后 4 位数字。
最佳答案
/^\d(\.\d{0,4})?$/
正则表达式分割
/
- 表示正则表达式的开始
^\d
- 表达式以数字开头
\.
- 句点需要转义,否则它们会匹配任何字符。
\d{0,4}
- 将匹配 0 到 4 位数字。
()
- 捕获包含的所有内容
?
- 匹配表达式的 0 或 1
关于jquery - 小数的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32765073/