我希望我的验证器不允许用户输入超过1个空格,因为我的应用程序将崩溃。最多25个字符,这是什么正则表达式?
<asp:RegularExpressionValidator ValidationGroup="grpSearch" ID="valSearch" ControlToValidate="txtSearchFor" ValidationExpression="^[a-zA-Z0-9][a-zA-Z0-9 ]+$" runat="server" ForeColor="Red"/>
我在那里试过的表达不起作用。
答案 0 :(得分:2)
您可以使用
ValidationExpression="^(?!.{26})[a-zA-Z0-9]+( [a-zA-Z0-9]*)?$"
请参阅regex demo。
详细:
^
- 字符串开头(?!.{26})
- 不允许26个字符(仅限25个字符)[a-zA-Z0-9]+
- 1个字母数字字符( [a-zA-Z0-9]*)?
- 匹配空格和0+字母数字字符的可选组$
- 字符串结尾如果感兴趣:要禁止字符串末尾的空格,*
量词(零或更多次出现)应替换为{{1} }量词(一个或更多次出现)。
答案 1 :(得分:0)
试试这个:
^[^ ]+ [^ ]+$
这是一个类似的主题,但只声明您对字母数字字符的要求:
^(A-Za-z0-9|[^ ])+ (A-Za-z0-9|[^ ])+$