gpt4 book ai didi

python - 正则表达式:我的逻辑有缺陷

转载 作者:行者123 更新时间:2023-11-30 23:19:41 27 4
gpt4 key购买 nike

我正在尝试匹配一个模式,其中第一个括号中的非单词字符从不重复,并且该模式必须以括号中的第二组结尾。我只是不明白为什么这个测试用例失败:

regexString = '([\-\._]?[a-zA-Z0-9]+)*'
rgx = re.compile(regexString)
assert(rgx.match('dan--') == None)

最佳答案

重新匹配的文档:https://docs.python.org/2/library/re.html#re.match如果字符串开头的零个或多个字符与正则表达式模式匹配,则返回相应的 MatchObject 实例。

在您的情况下,“([-._]?[a-zA-Z0-9]+)*”明显匹配“dan--”的“dan”部分,因此结果不是 None 而是 MatchObject。如果您不希望它与您组中的内容以外的任何内容匹配,请将您的组放在 ^ 和 $ 之间。

关于python - 正则表达式:我的逻辑有缺陷,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25945274/

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