正则表达式以验证十进制数

Jas*_*son 4 .net c# regex

正则表达式应符合以下条件.点之前和之后的元素数量可以是任意数量.仅允许1个点,仅在第一个位置允许使用负号.我不需要逗号.

例:

1
-1
-1.
1.
1.2
-.2
-0.2
000.300
Run Code Online (Sandbox Code Playgroud)

以上所有表达式都应该成立.

所以如果我分手了......

  1. 首先是可选的负号.
  2. 点前零或更多数字.
  3. 点是可选的.最多可以发生一次.它也可以是纯整数.
  4. 点后面的O或更多数字.

任何帮助将不胜感激.

eri*_*ric 5

你可能想要的是这个:

^-?\d*\.?\d*
Run Code Online (Sandbox Code Playgroud)

这将给你一个可能的负号(-?),
后跟任意数量的数字(\d*),
后跟一个可能的小数点(\.),
后跟小数点后面的任意数量的尾随数字(\d*).

既然你只是想验证它是否是一个有效的浮点数,那么@MarcinJuraszek有一个好点,你可能不想在这里使用正则表达式.