在出现新情况之前,我有以下正则表达式运行良好
^.*[?&]U(?:RL)?=(?<URL>.*)$
基本上,它用于 URL,在 U= 或 URL= 之后抓取所有内容并在 URL 匹配中返回它
所以,对于以下
http://localhost?a=b&u=http://otherhost?foo=bar
URL = http://otherhost?foo=bar
不幸的是,出现了一个奇怪的案例
http://localhost?a=b&u=http://otherhost?foo=bar&url=http://someotherhost
理想情况下,我希望 URL 为“ http://otherhost?foo=bar&url=http://someotherhost ”,而只是“ http://someotherhost ”
编辑:我认为这解决了它......虽然它不漂亮
^.*[?&](?<![?&]U(?:RL)?=.*)U(?:RL)?=(?<URL>.*)$