我尝试过这样写:^A-Za-Z0-9-{1,30}$,但是regex不应该以特殊字符或空格开头和结尾。
它应该允许的样本值:
EcoLight
生态光
Eco_Light
生态光
生态光1
发布于 2022-02-23 09:18:51
一种选择是使用:
^(?!.{31})[A-Za-z0-9]+(?:[ _-][A-Za-z0-9]+)*$
请看在线演示。负查找将防止超过30个字符,而非捕获组允许通过类[ _-]
中的任何字符分隔多组字符。
发布于 2022-02-23 09:34:06
如果regex模式以字母或数字结尾,那么它就不会以其他东西结尾。
^[A-Za-z0-9-][A-Za-z0-9_ -]{0,29}[A-Za-z0-9]$
https://stackoverflow.com/questions/71234182
复制相似问题