我很清楚,如果需要最少 4 个字符,则应使用此量词来指示正则表达式的最小长度{4,}
我正在尝试编译一个正则表达式,go以允许
总共最少4个字符,包括连字符
仅字母、数字和连字符
最后一个字符不应是连字符
所以建议我使用这个:
^[a-zA-Z0-9-]*[a-zA-Z0-9]$
Run Code Online (Sandbox Code Playgroud)
这似乎可以完成工作。
现在,考虑到我想强制至少 4 个字符,我对其进行了如下修改:
^[a-zA-Z0-9-]*[a-zA-Z0-9]{4,}$
Run Code Online (Sandbox Code Playgroud)
然而,考虑到下面的模式,这似乎并不能完成工作
eee0-lll
Run Code Online (Sandbox Code Playgroud)
不匹配 (根据我的要求它应该)。
我面临的限制之一是go不允许进行环视断言。
您可以使用
^[a-zA-Z0-9-]{4,}\b$
Run Code Online (Sandbox Code Playgroud)
请参阅正则表达式演示
细节
^- 字符串的开头[a-zA-Z0-9-]{4,}- 四个或更多 ASCII 字母、数字或连字符 - \b- 需要单词字符(字母、数字或_)立即出现在当前位置左侧的单词边界,因为下一个模式需要...$- 字符串末尾。| 归档时间: |
|
| 查看次数: |
7752 次 |
| 最近记录: |