我正在编写一个C#Web应用程序,并使用这个只接受介于0和1之间的正十进制值的正则表达式验证文本框中的数据:
^(0(\.\d+)?|1(\.0+)?)$
我会像正则表达式那样适应将条目限制为4位小数的精度。
允许
0
0.1
0.12
0.123
0.1234
1
不允许
-0.1
-1
1.1
2
我发现以下正则表达式只允许最多4位小数,但我不确定如何将两者结合起来。
^(?!0\d|$)\d*(\.\d{1,4})?$
非常感谢任何帮助,谢谢。
答案 0 :(得分:2)
您需要将+
量词替换为限制{1,4}
:
^(0(\.[0-9]{1,4})?|1(\.0{1,4})?)$
^^^^^ ^^^^^
请参阅regex demo
<强>详情:
^
- 字符串开头(
- 外线组开始
0
- 零(\.[0-9]{1,4})?
- .
的可选序列,后跟1到4位数字|
- 或1
- 1
(\.0{1,4})?)
- .
的可选序列,后跟1到4个零$
- 字符串结束。答案 1 :(得分:0)
这可用作验证功能,该功能允许按常规扩展(RegExp)允许四位数的小数位。
HTTP 500