匹配 url 的条件正则表达式

Conditional Regex to match url

我正在尝试创建一个 if/then 条件来匹配 url,但我似乎无法让它工作。我正在尝试匹配 URL,然后捕获非可选组。所以 - 如果 url 像这样进来:

/en/testing.aspx

我要捕捉/testing.aspx

如果 url 是这样进来的:

/testing.aspx

我要捕捉/testing.aspx

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

编辑:

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

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

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

Demo

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

看看这个

已编辑

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

如果 URL 中有“/en/”并且您仍想捕获 /testing.aspx 那么这里是编辑 (?:\/en)*(\/.+)$

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

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

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

this will match "/testing.aspx" in all bellow samples

/testing.aspx or

/en/testing.aspx or

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