登录
首页 >  Golang >  Go问答

正则表达式中的最小长度

来源:stackoverflow

时间:2024-04-13 16:24:34 348浏览 收藏

目前golang学习网上已经有很多关于Golang的文章了,自己在初次阅读这些文章中,也见识到了很多学习思路;那么本文《正则表达式中的最小长度》,也希望能帮助到大家,如果阅读完后真的对你学习Golang有帮助,欢迎动动手指,评论留言并分享~

问题内容

我很清楚,要指示正则表达式的最小长度,如果需要最少 4 个字符 {4,}

我正在尝试在 go 中编译一个允许的正则表达式

  • 总共最少 4 个字符,包括连字符

  • 仅包含字母、数字和连字符

  • 最后一个字符不能是连字符

所以有人建议我使用这个:

^[a-za-z0-9-]*[a-za-z0-9]$

这似乎可以完成工作。

现在,鉴于我想强制规定最少 4 个字符,我对其进行了如下修改:

^[a-za-z0-9-]*[a-za-z0-9]{4,}$

然而,考虑到下面的模式,这似乎不起作用

eee0-lll

匹配(根据我的要求,应该匹配)。

我面临的限制之一是 go 不允许环视断言。


解决方案


你可以使用

^[a-zA-Z0-9-]{4,}\b$

查看regex demo

详细信息

  • ^ - 字符串开头
  • [a-za-z0-9-]{4,} - 四个或更多 ascii 字母、数字或连字符 -\b - 需要单词字符(字母、数字或 _)立即出现在当前位置左侧的单词边界,因为下一个模式需要...
  • $ - 字符串结尾。

理论要掌握,实操不能落!以上关于《正则表达式中的最小长度》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>