asp net正则表达式,不允许空格

时间:2017-01-19 12:39:36

标签: asp.net .net regex validation

我希望我的验证器不允许用户输入超过1个空格,因为我的应用程序将崩溃。最多25个字符,这是什么正则表达式?

<asp:RegularExpressionValidator ValidationGroup="grpSearch" ID="valSearch" ControlToValidate="txtSearchFor" ValidationExpression="^[a-zA-Z0-9][a-zA-Z0-9 ]+$" runat="server" ForeColor="Red"/>

我在那里试过的表达不起作用。

2 个答案:

答案 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|[^ ])+$

在这里测试:https://regex101.com/r/3w6B6h/3