浮点数正则表达式介于0和1之间

Fat*_*mez 4 regex

我正在尝试验证浮点数的输入,其中最大值是1.0,最小值是0.

Min : 0
Max : 1
Run Code Online (Sandbox Code Playgroud)

可能的值;

0.1
0.99
0.365
Run Code Online (Sandbox Code Playgroud)

我如何用正则表达式成功呢?

Mik*_*keM 6

作为javascript正则表达式文字:

 /^(0(\.\d+)?|1(\.0+)?)$/
Run Code Online (Sandbox Code Playgroud)


inh*_*han 5

0(\.\d+)?|1\.0
Run Code Online (Sandbox Code Playgroud)

说明:

0            # a zero
(\.\d+)?     # a dot and min 1 numeric digit - this is made optional by ?
|            # or
1\.0         # one, a dot and a zero
Run Code Online (Sandbox Code Playgroud)

如果你需要这个匹配整个sring那么你将需要插入符号和表示字符串开头和字符串结尾的美元符号,分别如 ^(0(\.\d+)?|1\.0)$

此外,如果您想查找可能的负数,您需要在前面添加一个可选的减号^-?(0(\.\d+)?|1\.0)$.当然,对于指数,模式需要改变.