匹配 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)?(\/.*)$
使用正则表达式 \/en(\/.+)$
看看这个
已编辑
https://regex101.com/r/lwowhi/6
如果 URL 中有“/en/”并且您仍想捕获 /testing.aspx
那么这里是编辑 (?:\/en)*(\/.+)$
猜测所有页面都是.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
我正在尝试创建一个 if/then 条件来匹配 url,但我似乎无法让它工作。我正在尝试匹配 URL,然后捕获非可选组。所以 - 如果 url 像这样进来:
/en/testing.aspx
我要捕捉/testing.aspx
如果 url 是这样进来的:
/testing.aspx
我要捕捉/testing.aspx
有使用正则表达式的简单方法吗?
编辑:
Url 可以是多部分 url,例如 /en/sub1/sub2/testing.aspx
- 我基本上想要“/en/
”之后的所有内容。
您可以使用贪婪的正则表达式,它将消耗所有内容直到最后的正斜杠。然后,捕获该点之后的所有内容。
^.*?(?:\/en)?(\/.*)$
使用正则表达式 \/en(\/.+)$
看看这个
已编辑
https://regex101.com/r/lwowhi/6
如果 URL 中有“/en/”并且您仍想捕获 /testing.aspx
那么这里是编辑 (?:\/en)*(\/.+)$
猜测所有页面都是.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