正则校验数字可以为正整数小数和0,但不能是0.0,0.00,……,1.00以此类推,这种正则该如何写
可以使用如下正则表达式来校验数字可以为正整数小数和0,但不能是0.0,0.00,1.00以此类推:
^(?!0(\.0+)?$)(?!0+(\.\d+)?$)\d+(\.\d+)?$
该正则表达式的含义如下:
^ 匹配字符串的开头
(?!0(\.0+)?$) 使用负向前瞻,排除0、0.0、0.00等数字
(?!0+(\.\d+)?$) 使用负向前瞻,排除以0开头的数字,如0.123、0.001等
\d+(\.\d+)? 匹配正整数和小数,其中小数点后面至少有一位数字
$ 匹配字符串的结尾
使用该正则表达式可以满足你的需求,即校验数字可以为正整数小数和0,但不能是0.0,0.00,1.00以此类推。
^(?!0(\.0+)?$)(?!0+(\.\d+)?$)\d+(\.\d+)?$
该正则表达式的含义如下:
^ 匹配字符串的开头
(?!0(\.0+)?$) 使用负向前瞻,排除0、0.0、0.00等数字
(?!0+(\.\d+)?$) 使用负向前瞻,排除以0开头的数字,如0.123、0.001等
\d+(\.\d+)? 匹配正整数和小数,其中小数点后面至少有一位数字
$ 匹配字符串的结尾
使用该正则表达式可以满足你的需求,即校验数字可以为正整数小数和0,但不能是0.0,0.00,1.00以此类推。
温馨提示:答案为网友推荐,仅供参考
第1个回答 2023-02-21