我正在开发一个GitHub钩子,以便在提交消息与特定字符串匹配时移动一些Zenhub问题的位置。我想要达到的是:
Progress #121, #128, #50
我想在这里提取问题编号:121,128,50和行必须有一个进度前缀。问题必须以逗号分隔,以#开头,并且可以有任意数量的前缀空格。你知道吗
到目前为止我所取得的成就是
^(?:Progress)(?:\s*#(\d+),?)+$
这只给了我最后一个捕获组,这里是50。你知道吗
我想知道我哪里出错了,如何达到预期的结果。非常感谢。你知道吗
EDIT:我想使用regex,因为我也想解决这些额外的情况:“Progress”可以从字符串的中间开始,也可以从任何一行开始。如果“Progress”从字符串的中间开始,那么我必须检查它后面是否有任何问题编号。你知道吗
因此,如果有任何答案可以用Python(而不是regex)优雅地解决这个问题,我们也欢迎。你知道吗
使用正则表达式匹配整个模式,同时从中提取重复的子模式。我不确定你能不能同时做这两件事——要么是一件,要么是另一件。你知道吗
如果您使用的是Python,我建议您简化这个过程。使用一个简单的
str.startswith
检查,然后用regex提取问题号。你知道吗它应该返回
['121', '128', '50']
。如果您正在使用JavaScript,则可以采用类似的方法。你知道吗相关问题 更多 >
编程相关推荐