regex - 需要一个正则表达式来匹配不能全为零的可变长度数字字符串

标签 regex validation pcre lookahead negative-lookahead

我需要验证表单上的输入。我期望输入是1到19位之间的数字。输入也可以从零开始。但是,我想验证它们不是全零。我有一个正则表达式,可以确保输入的数字是1到19之间的数字。

^\d[1,19]$

但是我不知道如何包括整个字符串不是全为零的检查。我试过了
^(![0]{1,19})(\d[1,19])$

但它在0000000000000000001上失败,因为它允许可变数量的零。

如何检查整个字符串不是零?

谢谢。

我试图在ASP.NET RegularExpressionValidator中执行此操作,因此我希望使用单个表达式。我还有其他选择,因此,如果不能做到这一点,我不会感到不走运。

最佳答案

^(?!0+$)\d{1,19}$

关于regex - 需要一个正则表达式来匹配不能全为零的可变长度数字字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/521242/

相关文章:

validation - 带有内联验证的 plone z3c.form.GroupForm

jQuery 验证表单远程规则,成功消息

php - 自然语言处理的正则表达式 "does not contain"模式问题

javascript - 与正则表达式的混淆

javascript - Vanilla JavaScript 函数在给定 CSS 选择器的情况下查找 DOM 元素

regex - 匹配引号中的文本(新手)

forms - Laravel:在错误的方法放置表单验证响应后提交方法删除表单失败

JavaScript 正则表达式删除特殊字符并删除多余的空格,同时保留逗号

正则表达式仅在字符序列之后匹配出现

PHP 5.4 安装后 : preg_match(): Compilation failed: unknown option bit(s) set at offset 0