C# 对texbox进行验证。正则表达式?
在我的Web应用程序中,我有一个用户注册页面,其中一个文本框包含房屋号: 用户必须在该文本框中输入houseno。我知道用户可以输入所有数字或所有字母或所有字母,但不能输入所有特殊字符我如何限制用户不输入所有特殊字符,如 用户可以输入 123455或 abcdef或 12abcdef 但不是 &&&&&&或 或 @@@@或 *****用户不应输入特定字符C# 对texbox进行验证。正则表达式?,c#,asp.net,regex,C#,Asp.net,Regex,在我的Web应用程序中,我有一个用户注册页面,其中一个文本框包含房屋号: 用户必须在该文本框中输入houseno。我知道用户可以输入所有数字或所有字母或所有字母,但不能输入所有特殊字符我如何限制用户不输入所有特殊字符,如 用户可以输入 123455或 abcdef或 12abcdef 但不是 &&&&&&或 或 @@@@或 *****用户不应输入特定字符 给我一些解决方案谢谢你我想你需要的正则表达式是(\w\124;\ d)+ 编辑:\w已经包含数字,因此:\w+只需^\w+$ ^指示应用正则
给我一些解决方案谢谢你我想你需要的正则表达式是
(\w\124;\ d)+
编辑:\w已经包含数字,因此:
\w+
只需^\w+$
指示应用正则表达式模式的字符串的开头^
匹配字母、数字和下划线\w
匹配一个或多个匹配项(在本例中应用于字母、数字和下划线)+
表示应用正则表达式模式的字符串的结尾$
^[a-zA-Z0-9]+$
如果该字段是可选的,那么您可能希望使用
*
代替+
,因为它匹配零次或多次出现。在asp.net中实现这一点的标准方法是使用RegularExpressionValidator控件。一个简单的例子如下:
<asp:Label runat="server" ID="HouseNoLabel" Text="House No." AssociatedControlID="HouseNoTextBox" />
<asp:TextBox runat="server" ID="HouseNoTextBox" />
<asp:RegularExpressionValidator runat="server" ID="HouseNoValidator" ControlToValidate="HouseNoTextBox"
ErrorMessage="* only alphanumeric characters are allowed" ValidationExpression="[\w]+" />
如果有一个非特殊字符,则该值将匹配true。它不会将输入限制为只使用非特殊字符。嗨,科纳米曼先生,将其重新设置为不使用所有特殊字符,但例如,我输入这样的“H-No:41-259#”,它给出了错误,但我想输入这样一个特殊字符,我想你理解我的问题,我会再次解释谢谢你的回答我可以输入特殊字符,但不是全部例如,如果我在文本框中输入这样的“***&&&&^^^%%”,它应该会给出错误,因为它不可能是房子不在书里?感谢您的回复Hi先生Russ Cam it restriing不使用所有特殊字符,但例如我输入这样的“H-No:41-259#”,它给出了错误,但我想输入这样的特殊字符,我想你理解我的问题,我会再次解释谢谢你的回答我可以输入特殊字符,但不是全部例如,如果我在文本框中输入这样的“***&&&&^^^%%”,它应该会给出错误,因为它不可能是房子不在书里?感谢您的响应我尝试一下^\w+$不工作,我的意思是当我在文本框中输入这样的“41-259#”时,它给出了错误,但我想允许该错误,感谢您的响应您希望允许哪些特殊字符?根据您的注释,将正则表达式更改为^[\w-#]+$
rob先生感谢您的回复,但它不起作用。请看它只允许字母数字,但不允许使用特殊字符,如“41-259”。然后它会出现错误。我说的不是所有特殊字符,而是允许字母数字和特殊字符的组合