我已经提出了以下正则表达式来接受.25间隔或四分之一格式的值,如1.25,10.75,11.50,12,13.
正则表达式
^\d+((\.0+)*|(\.250*)|(\.50*)|(\.750*))$
Run Code Online (Sandbox Code Playgroud)
例
接受值 = 0,0.25,0.50,0.75,3,1.25,1.50,1.75,5,10
不接受的值 = 0.15,0.20,0.26,0.30,1.30,1.55
我有以下问题;
1-它不接受.25但接受0.25
2-如何将值限制为最大数量,我希望它最多接受15.5
在我看来,正则表达式不是这种工作的正确工具.您要接受的所有值都是十进制值,为什么不简单地将输入的值解析为十进制,然后检查它是否与您接受的值相符?
decimal number;
if (Decimal.TryParse(value, out number))
// Check if you're in the correct range
Run Code Online (Sandbox Code Playgroud)
它会更简单,更容易出错.
| 归档时间: |
|
| 查看次数: |
1414 次 |
| 最近记录: |