繁体   English   中英

正则表达式,用于读取前导零的正整数

[英]Regular expression for reading positive integers with leading zeros

我有以下TextBoxRegularExpressionValidator

<asp:TextBox ID="txtQuantity" runat="server" MaxLength="7"></asp:TextBox>

<asp:RegularExpressionValidator ID="RegularExpressionValidator1" 
runat="server" ErrorMessage="Enter only positive integer values."
ControlToValidate="txtQuantity" ValidationExpression="^[1-9][0-9]*$"
CssClass="required" Display="Dynamic" />

它正在正确读取所有正整数,并在错误的条目上给出错误消息。

但是,如果输入以0开头的正整数,验证将失败。

例如: "098""09"

我应该更改正则表达式还是逻辑?

您可以允许零与非零,而不允许零(或空字符串)与

^(?!0+$)[0-9]+$

观看演示

正则表达式说明

  • ^ -字符串的开头(不确定是否有必要,我认为正则表达式默认锚定,但请检查)
  • (?!0+$) -检查整个字符串是否不等于0 (或0000 )的否定超前
  • [0-9]+ -0到9之间的1个或多个数字(请注意,它已经不允许使用空字符串)
  • $ -字符串结尾(与^相同)

暂无
暂无

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

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