GitHub的Regex调整了回购和问题的降价

时间:2013-11-15 20:23:00

标签: ruby regex github-flavored-markdown

我正在尝试为以下字符串找到两个不同的正则表达式:

eturk/clock, eturk/vermonster, and noted/noted#42

其中一个正则表达式应该只识别回购(没有问题)。所以对于第一个正则表达式,它应该只返回这些匹配:

[["eturk", "clock"], ["eturk", "vermonster"]]

然后对于第二个,它应该与回购一起识别问题。所以比赛将是:

[["noted", "noted", "42"]]


这是我到目前为止第一部分:

/(\w*)\/(\w*)?/

这将匹配如下:

[["eturk", "clock"], ["eturk", "vermonster"], ["noted", "noted"]]

但问题是,我不希望它与附加问题的回购参考相匹配。任何人都可以提供任何帮助吗?

1 个答案:

答案 0 :(得分:5)

正则表达式#1

/\b(\w+)\/(\w+(?!#\d+))\b/

描述

Regular expression visualization

Demo



Regex#2

/\b(\w+)\/(\w+)#(\d+)\b/

描述

Regular expression visualization

Demo