如何编写正则表达式验证大于等于0的非负整数?
验证大于等于0的非负数字正则表达式
根据你的需求,这里提供几种不同场景下的正则方案:
1. 匹配非负整数(包含0,不允许空串)
直接使用:
/^\d+$/
这个规则会匹配所有由0-9组成的非空字符串,比如0、12、999这类,自然满足≥0且无负号的要求。
2. 允许空字符串(适配输入框未填写场景)
如果需要兼容空输入,可以调整为:
/^\d*$/
注意:这个规则会匹配空串,若需排除空值,建议在正则之外做额外判断。
3. 匹配非负浮点数(包含整数和小数)
如果需要支持带小数的非负数(比如0.5、10.0),用这个:
/^\d+(\.\d+)?$/
它既可以匹配整数形式的非负数,也能匹配带小数点的合法非负小数。
4. 严格禁止前导零的非负整数
如果不希望出现012这类带前导零的数字,使用:
/^0$|^[1-9]\d*$/
这个规则要么匹配单独的0,要么匹配以1-9开头、后面跟任意数字的正整数,完美规避前导零问题。
内容的提问来源于stack exchange,提问作者mtsyumm
相关产品推荐
相关产品推荐

