dts*_*tsg 3 .net c# regex validation alphanumeric
我有以下正则表达式:
^[a-zA-Z0-9]+( [a-zA-Z0-9]+)*$
Run Code Online (Sandbox Code Playgroud)
我正在尝试验证0到10个字符之间的字符串,该字符串不能包含更多行中的两个空格或不能为空.该字符串不能包含任何特殊字符,并且可以不区分大小写,并且可以包含连字符.
如何将输入限制在0-10个字符之间?
我试过了
^[a-zA-Z0-9]+( [a-zA-Z0-9]+{0,10})*$
Run Code Online (Sandbox Code Playgroud)
但它不起作用.
我会这样做:
^(?!.* )(?=.*[\w-])[\w -]{1,10}$
Run Code Online (Sandbox Code Playgroud)
这使用负前瞻(?!.* )来断言没有两个连续的空格,并且(?=.*[\w-])断言它的正向前瞻至少有一个非空格字符(我假设"空"表示"仅空格").
请注意,如果它不能为"空",则长度不能为零,因此长度范围必须为1-10,而不是0-10.
微小的注意事项是,如果它是第一个或最后一个字符,则不需要在字符类中转义短划线.
| 归档时间: |
|
| 查看次数: |
17309 次 |
| 最近记录: |