【发布时间】:2021-04-12 21:19:45
【问题描述】:
对不起,如果我的问题很简单,但是我被阻止了。
我正在寻找一种方法来验证匹配多个案例的正则表达式:
- 最少 1 个字符(可以是字母或数字)
- 最多 100 个字符(可以是字母、数字和破折号)
- 不能以破折号开头
- 不能以破折号结尾
- 后面不能有 2 个破折号
我试过这个:^[a-zA-Z0-9]{1}(?:([a-zA-Z0-9][-]{0,1}){0,98}[a-zA-Z0-9])?$
它几乎适用于所有情况。除了这两种情况:
-
0-1234(第二个字符上的破折号) - 如果我写了 100 个字符 (0123456789[...]blablabla),然后我在里面插入破折号,即使我不想超过 100 个字符,它仍然会验证字符串
有人可以帮帮我吗?非常感谢!
【问题讨论】:
-
请始终添加您的编程语言/工具,因为正则表达式引擎有些不同。
-
对不起,我忘了。我正在使用 Python 进行开发,并且正在使用“re”模块