KP.*_*KP. 6 .net regex asp.net validation
我正在尝试使用a RegularExpressionValidator来验证TextBox输入长度.我有它的工作,但它只接受字母和数字.我想允许任何字符,唯一的检查是不超过25个字符.
<asp:TextBox ID="MenuLabel" runat="server" />
<asp:RegularExpressionValidator ValidationExpression="^[a-zA-Z0-9]{25}$" ID="MenuLabelVal" runat="server" ErrorMessage="Menu Label must be no longer than 25 characters." ControlToValidate="MenuLabel" />
Run Code Online (Sandbox Code Playgroud)
正则表达式不是我的强项,所以有人可以告诉我如何修改^[a-zA-Z0-9]{25}$表示任何字符多达25次而不仅仅是字母数字.
注1:我已经RequiredFieldValidator准备好确保一个或多个字符.
注意2:我知道我可以MaxLength在TextBox上使用该属性,但是这个表单也用于编辑现有数据,我不希望它在编辑时简单地截断现有记录.我更愿意实现一个验证器,它使用户可以明显地编辑缩短值所需的现有数据,而不是在没有用户意识的情况下截断表单.
注3:我愿意接受替代解决方案,例如自定义验证器,只要它仅依赖于客户端验证.我没有访问代码隐藏来在服务器上编写自定义验证处理程序.
Jas*_*yne 15
.{1,25}
Run Code Online (Sandbox Code Playgroud)
应该将值限制为任何char 1至25倍.不知道这将如何处理unicode输入 - 它可能将多字节字符计为单个字符,所以如果你使用它来限制数据库时要小心
可能你可能想要,^.{1,25}$但我认为即使这个简单的版本应该工作