仅当最后一部分符合条件时才捕获整个字符串

时间:2019-03-14 17:04:13

标签: regex

我有以下网址。

example.com/ie/ie/womens-c-1.html
example.com/ie/womens-c-1.html

如果只指定一次/ie/,我只希望正则表达式捕获字符串。

我有一个模式可以捕获第一个/ie/

([a-z.-]*)\/([a-z]{2})\/

我无法确定最后一部分,以确保仅在模式匹配时捕获字符串

/ie/(*.)-c-([0-9]*).html

我需要使用前瞻性工具或类似工具吗?

更新:第一个/ie/之后的所有内容都不会包含/,我可以用它来帮助建立规则吗?

我希望最终的捕获组如下。 (用括号表示的组)(example.com)/(ie)/(womens)-c-(1).html

1 个答案:

答案 0 :(得分:2)

如您的帖子所述,将您的正则表达式扩展为仅匹配URL,该URL具有两个字母字符,后跟一个/,接下来的内容不再包含任何/字符,并且剩余信息得到了进一步分为两个组

^([a-z.-]*)\/([a-z]{2})\/([^\/]*)-c-(\d*)\.html

Online Demo