我想验证用户在文本框中的输入。在文本框中,用户只能输入街道名称,空格然后输入数字(例如,道路65)。
要求是:
对此的验证正则表达式是什么?
我RegularExpressionValidator
在ASP .NET中使用。
<asp:RegularExpressionValidator ID="RegularExpressionValidatorStreet" runat="server"
ErrorMessage="This is wrong!" ValidationExpression="^[a-zA-Z\s][0-9]$"
ControlToValidate="streettxt"></asp:RegularExpressionValidator><br />
你的表达仅匹配一个字符[a-zA-Z\s]
,然后在一个字符[0-9]
,所以它会匹配"r6"
或" 6"
或"Z8"
但不是"road 65"
。
由于您要匹配至少一个或多个字母,然后匹配一个空格字符,最后是一个或多个数字,请尝试:
ValidationExpression="^[a-zA-Z]+\s[0-9]+$"
"road 65"
,"qWerTy 6"
或"q 23983049823948"
"road 65"
," road 65"
,也不"road65"
^
在字符串开头声明位置[a-zA-Z]+
在一个和无限次之间a-z
或A-Z
无限次之间匹配一个字符,并尽可能匹配多次\s
匹配任何单个空格字符[0-9]+
0-9
在一个和无限次之间匹配一个字符,并尽可能多地匹配$
断言字符串末尾的位置如果您想在一个空格字符和无限个空格字符之间进行匹配,请将量词添加到上\s+
:
ValidationExpression="^[a-zA-Z]+\s+[0-9]+$"
这将匹配两者"road 65"
,"road 65"
但不匹配"road65"
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句