gpt4 book ai didi

python - 带连字符的正则表达式单词

转载 作者:太空宇宙 更新时间:2023-11-03 13:19:13 25 4
gpt4 key购买 nike

我正在寻找一个正则表达式来匹配至少有一个数字、一个字母 (a-zA-Z) 和至少一个连字符的单词(其中没有空格)。总大小应在 4 到 40 之间。

例子:

你好,你 h9-11c 匹配 h9-11c

foo 79d-11c-afac bar 匹配 79d-11c-afac

foo d-c-afac bar 不匹配 - 没有数字

到目前为止我已经想出了这个:

\b(?=.*\d)(?=.*[a-zA-Z])(?=.*-).{4,40}\b

但不是只匹配一个词(有点贪心)

最佳答案

使用\S匹配非空白字符。

此外,\b 匹配字母数字字符的边界,但您已将单词定义为任何非空白字符。

(?<!\S)(?=\S*\d)(?=\S*[a-zA-Z])(?=\S*-)\S{4,40}(?!\S)

关于python - 带连字符的正则表达式单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20034394/

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