关于asp.net:如何在文本框上使用RegularExpressionValidator

how to use RegularExpressionValidator on textbox

我有一个需要验证的文本框,这样用户可以输入最多四个字符,并且它们可以是字母数字。我使用的是vs2003,.net 1.1。

请告诉我应该用什么表达式来验证这个条件任何帮助都会很好。谢谢!

尝试如下:

1
<input style="z-index: 102; left: 88px; position: absolute; top: 72px" type="submit" value="Submit" id="Submit1" name="Submit1" runat="server">


如您所说,使用正则表达式验证器并将表达式设置为如下所示:

1
^([\S\s]{0,4})$

将4替换为所需的最大长度。

更新:

1
2
3
4
<asp:RegularExpressionValidator id="RegularExpressionValidator1" runat="server"
        ErrorMessage="RegularExpressionValidator"
        ValidationExpression="^([\S\s]{0,4})$"
        ControlToValidate="wtxtTPP" />

这对我来说很好。我用一个普通的ASP.NET按钮替换了您的提交按钮,并简化了示例中所有不需要的内容。一般来说,如果您只有一行文本框,那么您可以像以前那样使用MaxLength="4"来限制文本长度。不需要验证器。


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
       <table>
         <tr>  
           <td>E-mail Address:</td>
           <td>
              </asp:TextBox>
           </td>
           <td>
             <asp:RegularExpressionValidator id="RegularExpressionValidator1" runat ="server"
              ErrorMessage="Please give Email Address!"
              ControlToValidate="txt_address"
              ValidationExpression="\S+@\S+\.\S+\w+"//example ([email protected])
              ForeColor="Red">
             </asp:RegularExpressionValidator>
           </td>
         </tr>
       </table>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
    <table>
      <tr>            
        <td>
           
            Male</asp:ListItem>
            Female</asp:ListItem>
            </asp:RadioButtonList>
         </td>
         <td>
            <asp:RequiredFieldValidator ID="RequiredFieldVlidator2" runat="server"
            ErrorMessage="Please Choose your Gender" ControlToValidate="rbl_gender"
            ForeColor="Red">
            </asp:RequiredFieldValidator>
         </td>
       </tr>
   </table>
1
2
3
4
5
6
7
8
9
10
<table>
   <tr>    
     <td>
         <asp:RequiredFieldValidator ID="RequiredFeildValidator1"
            runat ="server" ControlToValidate ="txt_name"
            ErrorMessage="Please Insert Your name !"
            ForeColor="Red">
         </asp:RequiredFieldValidator>
     </td>
   </tr>


就像@remy说的。

此外,regexp的{0,4}部分意味着长度应为零至最大4,因此允许零长度,即无输入。如果数字是强制的,请记住使用RequiredFieldValidator,或者用最小位数替换零。


validationExpression中的一个非常小的更改似乎只会在有时工作和可靠工作之间产生差异。以下内容对我的开发很有帮助,但对生产却没有帮助:

1
 

"[\s\S]{0,4000}"替换上面的validationExpression,它现在工作可靠。去掉^和$-RegularExpressionValidator不需要这样做。