正则表达式介于-10到10之间,最多1个小数位

时间:2017-06-06 09:40:17

标签: c# .net regex

我的ac #web应用程序有一个控件,我想添加一个正则表达式,但由于我对正则表达式无用,我希望有人能够帮助我!

我想要一个接受-10到10之间所有值的正则表达式,并允许最多1个可选的小数位。

成功输入

1
-2.1
3.7
-4
5.8
10
-10

输入不成功

10.1
-10.1
3.14159265359
-3.14159265359 and so on

我的应用程序^(0(\.\d{1,4})?|1(\.0{1,4})?)$中已经有一些类似的正则表达式。这只接受4dp的正值和负值,我已经改变了它(见下文),但我不确定如何包含-10到10的范围。

^(0(\.\d{1,1})?|1(\.0{1,1})?)$

提前致谢

1 个答案:

答案 0 :(得分:1)

您可以使用

^-?(?:10(?:\.0)?|[0-9](?:\.[0-9])?)$

请参阅regex demo

如果您不希望10与小数部分中的0匹配,请移除(?:\.0)?

<强>详情:

  • ^ - 字符串开头
  • -? - 1或0 -个符号
  • (?:10(?:\.0)?|[0-9](?:\.[0-9])?) - 2个替代方案:
    • 10(?:\.0)? - 10可选地跟随.0
    • | - 或
    • [0-9](?:\.[0-9])? - 从09的任意1个数字,后跟可选的.和任意1位
    • 序列
  • $ - 字符串结束。