10位数字和数字的正则表达式验证程序仅c#asp.net

我想要一个正则表达式验证器,只有数字才会有10个数字

我已经尝试过,但它仅用于数字而不用于数字的数字

<asp:RegularExpressionValidator ID="rvDigits" runat="server" ControlToValidate="txtMobId"
                                ErrorMessage="Enter numbers only till 10 digit" ValidationGroup="valGroup" ForeColor="Red"
                                ValidationExpression="d+" />

您需要使用限制量词{min,max}

如果您允许空输入,请使用{0,10}匹配0到10个数字:

ValidationExpression="^[0-9]{0,10}$"

否则,使用{1,10}来允许1到10个数字:

ValidationExpression="^[0-9]{1,10}$"

或者匹配正好10位数的字符串省略min,部分:

ValidationExpression="^[0-9]{10}$"

此外,请注意,服务器端验证使用.NET正则表达式语法,并且d在此正则表达式中匹配09多个数字,因此更喜欢[0-9] 。 请参阅d效率低于[0-9]

此外,您似乎可以省略^$ (请参阅ASP.NET文章中的MSDN正则表达式):

您不需要指定字符串的开始和字符串匹配字符的结尾( ^$ ) - 它们是假定的。 如果添加它们,它不会伤害(或改变)任何东西 - 这是没有必要的。

为了清楚起见,大多数人更愿意将其明确地放在模式中。


测试这个答案:

<asp:RegularExpressionValidator ID="rvDigits" runat="server" ControlToValidate="txtMobId" ErrorMessage="Enter numbers only till 10 digit" ValidationGroup="valGroup" ForeColor="Red" ValidationExpression="[0-9]{10}" />
链接地址: http://www.djcxy.com/p/86993.html

上一篇: Regular expression validator for 10 digit and numbers only c# asp.net

下一篇: Regular Expression Repeating Pattern separated by comma