用于十进制避免或语法的正则表达式

1 .net regex

我需要验证以下内容(在.Net中).

带或不带小数点的数字,最小1,最多6个字符(包括小数).如果有小数,则只能有一个小数位.所以这些都可以:123 123456 1234.5 123.4等.

这些不是:1234567 123.15 1.100等

我知道如何匹配可变数量的数字,但是通过使用或语法来完成上述操作的唯一方法(通过使用|我认为?)你可以在没有或语法的情况下实现这样的事情吗?

Jen*_*ens 5

您可以通过使用更加模糊的构造(如环视断言)轻松避免"或".你为什么要避免它?

例如,这应该按照你的要求做:

^(?=.{1,6}$)\d+(\.\d)?$
Run Code Online (Sandbox Code Playgroud)