繁体   English   中英

用于验证非负 integer 的正则表达式

[英]Regular expression for validating non-negative integer

我正在尝试对非负 integer(从 0 到无穷大的整数)进行输入验证。 我当前的正则表达式模式/^[1-9]+\d*$/是不够的,因为它使“0”无效。

如何修改它以接受“0”?

只需在括号中添加 0 '

[01-9]+\d*$ 

或者

[0-9]+\d*$

如果你只是把1-9改成0-9,它也会接受0234、0002、012等数字。如果你不想接受这些,我建议你试试这个:

^([1-9]\d*|0)$

此外,您可能希望删除 [1-9] 之后的“+”。 这是不必要的,因为已经有 \d*。

如果支持负前瞻(?! ),如果它不以零开头后跟另一个数字,您也可以匹配所有数字。

^(?!0\d)\d+$

正则表达式演示

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM