0-1之间最多两位小数的正则表达式
文章目录
00 | 写在前面
- 项目中用到了,又不想写一大堆
if-else
, 因此写了正则。
01 | 正文代码
oninput="value=value.replace(/^([^01]|(0(\.\d{2}.+))|(1\.[^0]+)|(1\.00.+)|([01][^\.]))$/,'')"
- 应该没问题,有bug的话欢迎评论告诉我。
- 对其进行解释:
//思路为:当输入不符合要求的数值时将其置空/^([^01]|(0(\.\d{2}.+))|(1\.[^0]+)|(1\.00.+)|([01][^\.]))$//^([^01] : 不以0/1开头(0(\.\d{2}.+)) : 0.xxxx 不止两位小数(1\.[^0]+) : 1后不为0(1\.00.+) : 1.00后还有其他东西([0-9]{2,}))$/ : 091234 多位数
02 | 补充
- 0-1之间最多两位小数的正则表达式如下
/^(0(\.\d{1,2})?|1(\.0{1,2})?)$/; 包含0和1不包含0: \b0(\.\d{1,2})\b包含0: \b0(\.\d{1,2})?\b包含0和1: \b(0(\.\d{1,2})?)|1\b
03 | 效果如下
本文转载自: https://blog.csdn.net/qq_43619459/article/details/116093016
版权归原作者 aLinxi 所有, 如有侵权,请联系我们删除。
版权归原作者 aLinxi 所有, 如有侵权,请联系我们删除。