C# 具有最大4个十进制值的数字的正则表达式

C# 具有最大4个十进制值的数字的正则表达式,c#,.net,regex,C#,.net,Regex,我需要一个正则表达式,其中一个数字最多可以接受4个十进制值 有效值: 1.2222 0.50 .50 56.56666666 12. 无效值: 1.2222 0.50 .50 56.56666666 12. 目前我使用的正则表达式是^\d+\.?\d{0,4}$,这在.50的情况下不起作用,但在0.50的情况下起作用 有人能帮我一下吗。要匹配您指定的数字格式,请使用 ^(?=.)\d*(?:\.\d{1,4})?$ 看 详细信息 ^-字符串的开头 (?=)-字符串中必须至少有1个字符

我需要一个正则表达式,其中一个数字最多可以接受4个十进制值

有效值:

1.2222
0.50
.50
56.56666666
12.
无效值:

1.2222
0.50
.50
56.56666666
12.
目前我使用的正则表达式是
^\d+\.?\d{0,4}$
,这在
.50
的情况下不起作用,但在
0.50
的情况下起作用


有人能帮我一下吗。

要匹配您指定的数字格式,请使用

^(?=.)\d*(?:\.\d{1,4})?$

详细信息

  • ^
    -字符串的开头
  • (?=)
    -字符串中必须至少有1个字符(或
    (?!$)
    -字符串开头之后没有字符串结尾-不允许有空字符串)
  • \d*
    -0+位
  • (?:\。\d{1,4})
    -一个可选的
    • \。
      -一个点
    • \d{1,4}
      -1到4位数字
  • $
    -字符串结尾

要匹配指定的数字格式,请使用

^(?=.)\d*(?:\.\d{1,4})?$

详细信息

  • ^
    -字符串的开头
  • (?=)
    -字符串中必须至少有1个字符(或
    (?!$)
    -字符串开头之后没有字符串结尾-不允许有空字符串)
  • \d*
    -0+位
  • (?:\。\d{1,4})
    -一个可选的
    • \。
      -一个点
    • \d{1,4}
      -1到4位数字
  • $
    -字符串结尾

尝试以下正则表达式:

\d*\.\d{1,4}\b

请尝试以下正则表达式:

\d*\.\d{1,4}\b

不清楚:您是否将每个数字作为单独的字符串进行测试?您是验证还是提取?还是一个值列表?@Fildor,这将匹配一个只有点的字符串。@AndersonPimentel啊,对了。。。我知道有一个问题。很抱歉,我在正则表达式中有点弱,这是用于验证文本框的。请尝试。不清楚:是否将每个数字作为单独的字符串进行测试?您是验证还是提取?还是一个值列表?@Fildor,这将匹配一个只有点的字符串。@AndersonPimentel啊,对了。。。我知道有一个陷阱。很抱歉,我在正则表达式方面有点弱,这是用于验证文本框的。请尝试