gpt4 book ai didi

regex - 正则表达式中的最小长度

转载 作者:行者123 更新时间:2023-12-01 20:21:55 36 4
gpt4 key购买 nike

我很清楚,要指示正则表达式的最小长度,应该使用这个量词,如果需要至少 4 个字符的 min {4,}我正在尝试在 go 中编译正则表达式这将允许

  • 中最少 4 个字符总计 ,包括连字符
  • 只有字母数字和连字符
  • 最后一个字符应该不是 做一个连字符

  • 所以有人建议我使用这个:
    ^[a-zA-Z0-9-]*[a-zA-Z0-9]$
    这似乎可以完成这项工作。
    现在,考虑到我想强制执行最少 4 个字符,我对它进行了如下修改:
    ^[a-zA-Z0-9-]*[a-zA-Z0-9]{4,}$
    然而,鉴于下面的模式,这似乎并没有完成工作
    eee0-lll
    不是 match (根据我的要求它应该)。
    我面临的限制之一是 go不允许环视断言。

    最佳答案

    您可以使用

    ^[a-zA-Z0-9-]{4,}\b$
    regex demo
    详情
  • ^ - 字符串开头
  • [a-zA-Z0-9-]{4,} - 四个或更多 ASCII 字母、数字或连字符
    - \b - 需要字字符(字母、数字或 _)立即出现在当前位置左侧的字边界,因为下一个模式需要...
  • $ - 字符串的结尾。
  • 关于regex - 正则表达式中的最小长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63969623/

    36 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com