有条件的正则表达式匹配网址

时间:2017-05-19 03:56:56

标签: regex regex-lookarounds regex-group

我正在尝试制作一个if / then条件来匹配网址,但我似乎无法让它发挥作用。我正在尝试匹配URL,然后捕获非可选组。所以 - 如果网址是这样的:

/en/testing.aspx

我想抓拍/testing.aspx

如果网址如下:

/testing.aspx

我想抓拍/testing.aspx

使用正则表达式有一种简单的方法吗?

修改

网址可以是多部分网址,例如/en/sub1/sub2/testing.aspx - 我基本上想要" /en/"之后的所有内容。

3 个答案:

答案 0 :(得分:1)

使用正则表达式\/en(\/.+)$

检查出来

编辑

https://regex101.com/r/lwowhi/6

如果网址中有“/ en /”并且您仍想要捕获/testing.aspx,则此处为编辑(?:\/en)*(\/.+)$

https://regex101.com/r/lwowhi/8

答案 1 :(得分:0)

你可以使用一个贪婪的正则表达式,它将消耗所有内容直到最后的正斜杠。然后,捕捉那一点之后的所有内容。

^.*?(?:\/en)?(\/.*)$

Demo

答案 2 :(得分:0)

猜测所有页面都是.aspx然后使用group。

正则表达式:。(/。 .aspx)

  

这将匹配所有波纹管样本中的“/testing.aspx”

     

/testing.aspx或

     

/en/testing.aspx或

     

www.abc.com/en-us/testing.aspx