正则表达式允许 "single 0"或“任何其他位数?

标签 regex

我需要一个正则表达式来允许单个 0 或任何其他不以零开头的数字,因此:

0 or 23443 or 984756 are allowed but 0123 is not allowed.

我有以下只允许 1 到 9

[1-9]\d

最佳答案

寻找一个单独的 0 或 1-9 后跟任何其他数字。

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

如果要匹配较大字符串中的数字,请使用单词边界标记 \b 代替 ^$:

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

关于正则表达式允许 "single 0"或“任何其他位数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13956684/

相关文章:

JavaScript 正则表达式符号出现

php - 这些正则表达式模式不同吗?

javascript - 字符范围内的正则表达式字符类未通过 intellij 的 jsLint 检查

regex - Bash 正则表达式从数组元素中去除引号

python - 正则表达式在 python 中匹配和清理引号

python - 获取正则表达式的所有可能匹配项(在 python 中)?

regex - 如何使用前瞻排除正则表达式中的特殊字符

java - 在与量词匹配失败后,Java 的 matcher.find() 会保留什么样的状态?

java - 忽略分隔符替换所有java

python - 选择仅包含字母字符的行