regex - 应该匹配 0-999、0.0-999.9 以及 0,0-999,9 的正则表达式
问题描述
我再次与正则表达式作斗争。我需要一个正则表达式,它只匹配 0-999 的数字或 0-999 的数字,带一位小数,例如。0.0-999.9。
我所做的正则表达式/^([1-9][0-9]{0,2})|([1-9][0-9]{0,2})[,.][0-9]$/
有一个错误,它也匹配 1. 而不是 1.5,不应该是这种情况。
更多示例:
1 -> Match (in range 0-999)
1. -> No Match (no decimal)
1, -> Again no Match (no decimal)
1,5 -> Matches (in range 0,0-999,9)
1324 -> does not Match (over 999,9)
15.5 -> Matches (in range 0.0-999.9)
999,9 -> Matches (max. reached)
在此先感谢您的帮助。
解决方案
^(?:[1-9]\d{1,2}|\d)(?:[.,]\d)?$
应该管用。
推荐阅读
- debugging - gdb 我在调试什么文件
- java - UnboundLocalError:分配之前引用的局部变量“submit_args”-Pyspark
- android-studio-3.0 - androidTestImplementation 使用较新版本的测试运行程序时出错
- java - 如何在 ASM 中编写本机代码
- sockets - 模仿S7西门子PLC
- python - Pandas 数据框的条件分组
- arrays - 在Swift 4中使用for循环填充数组而不使用索引
- angular - 从组件到组件的角度重用属性
- assembly - 强制 GNU AS 使用替代
- javascript - JavaScript 增加按钮只增加一次