我基本上想要一个 RGBA 中 alpha 的正则表达式,它始终是 0 和 1 之间的正数。但是,我希望它最多只有 2 位数字,例如0.53& 不超过0.536.
0 到 1 之间的任何值,但最多保留 2 位小数
0
0.0
0.00
0.1
0.12
0.34
1
1.0
1.00
Run Code Online (Sandbox Code Playgroud)
0 到 1 之外的任何内容,如果它介于 0 到 1 之间,则它应该小于或等于小数点后 2 位,甚至不允许使用符号
0.123
90
3
-1
+1
Run Code Online (Sandbox Code Playgroud)
我注意到其他类似的问题,但它们允许符号或允许超过 2 个小数位。
目前,我有一个像/^(0+\.?|0*\.\d+|0*1(\.0*)?)$/允许超过 2 个小数位的正则表达式。我该如何解决?
您可以使用:
^(?:0(?:\.[0-9]{1,2})?|1(?:\.00?)?)$
Run Code Online (Sandbox Code Playgroud)
正则表达式详情:
^: 开始(?:: 开始一个非捕获组
0: 比赛 0(?:\.[0-9]{1,2})?: 匹配可选的点,后跟 1 或 2 位数字|: 或者1: 比赛 1(?:\.00?)?:在点后匹配可选的1 或 2 个零): 结束非捕获组$: 结尾