Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ASP.NET在单个ASP.NET输入控件上有多个验证控件?_Asp.net_Regex_Validation - Fatal编程技术网

ASP.NET在单个ASP.NET输入控件上有多个验证控件?

ASP.NET在单个ASP.NET输入控件上有多个验证控件?,asp.net,regex,validation,Asp.net,Regex,Validation,我有下面的文本框和它的验证器,但当我输入正确的文本时,它会触发RegularExpressionValidator错误消息,无法真正找出我做错了什么 <asp:TextBox ID="txtName" runat="server" onkeypress="return keyRestrict(event,'abcdefghijklmnopqrstuvwxyz-0123456789')" AutoCompleteType="Disabl

我有下面的文本框和它的验证器,但当我输入正确的文本时,它会触发RegularExpressionValidator错误消息,无法真正找出我做错了什么

            <asp:TextBox ID="txtName" runat="server" onkeypress="return keyRestrict(event,'abcdefghijklmnopqrstuvwxyz-0123456789')"
                AutoCompleteType="Disabled" Width="199px"></asp:TextBox><span style="color: Red">*</span>
            <asp:RequiredFieldValidator Display="Dynamic" ID="RequiredFieldValidator3" runat="server"
                ControlToValidate="txtName"></asp:RequiredFieldValidator>
            <asp:RegularExpressionValidator ID="revName" runat="server" ControlToValidate="txtName"
                CssClass="text-error" Display="Dynamic" ValidationExpression="^[\p{L}\s]+$" ErrorMessage="Invalid Name"></asp:RegularExpressionValidator>
*
我还使用ValidationExpression
^[A-Za-z]+$
来测试ValidationExpression中是否存在一些错误,然后在正在验证的文本框中键入
Name
,它仍然会触发RegularExpressionValidator的错误消息


关于

^[\p{L}\s]+$
将只匹配一个或多个字母(不是数字)或空格

如果你想用数字来验证它,你必须使用

^[\p{L}\p{N}\s]+$

这会将unicode字母、数字和空格1匹配很多次

实际上,我希望它只接受字母,而不接受数字和特殊字符characters@MuhammadMamoorKhan第一个正则表达式做你想做的事没有,它只接受任意数量的字符p,我不知道它为什么工作,我刚刚发现有一些糟糕的打字错误我非常抱歉,非常感谢亲爱的