正则表达式以获取URL中的最后一个值

时间:2012-09-06 03:24:02

标签: regex apache

我需要从网址

获取最后一个值

以下网址方案:

http://www.abc.com/aa/bb/cc

http://www.abc.com/aa/bb/cc?ab=1

http://www.abc.com/aa/bb/cc/

http://www.abc.com/aa/bb/cc/?ab=1

从上面的网址列表中我需要从网址中取出cc 正则表达式获得值cc

1 个答案:

答案 0 :(得分:2)

这应该可以解决问题:

([^/?]+)(?=/?(?:$|\?))

在此处查看:[{3}}


说明:

  • ([^/?]+) - 匹配斜杠或问号的任何字符。
  • (?= - 开始前瞻。
  • /? - 可选择匹配斜杠。
  • (?:$|\?) - 要么与问号匹配,要么声称我们已经结束了。
  • ) - 关闭前瞻。

注意:在演示中,它也在?字符后匹配,因为它正在进行全局搜索。但这不应该与你有关。