PHP正则表达式 - 查找URI中除特殊文件夹以外的所有URL

时间:2012-05-29 12:00:25

标签: php regex url

需要获取所有网址:

http://domain.name/novostroyki/novyy_petergof/

http://domain.name/novostroyki/novyy_petergof/?var1=value1&val2=value2=...

但不是以下几个:

http://domain.name/novostroyki/novyy_petergof/flats/

http://domain.name/novostroyki/novyy_petergof/flats/?var1=value1&val2=value2=...

尝试了类似的东西,但它没有按照我的意愿运作:

/novostroyki/((?!flats)[a-z_0-9A-Z\.])*/?\??(.*)/

2 个答案:

答案 0 :(得分:1)

试试这个正则表达式:

/novostroyki/((?!flats)[\w.]*/?)*(\?.*)?

不确定在所有情况下它是否都会好 - 它当然应该是上面列出的那些。

答案 1 :(得分:0)

检查此建议是否属实:

  

如果网址与列表中的正则表达式匹配,则不会继续显示列表中的下一个项目。

然后你可以使用:

  所有novostroyki / flats /

正则表达式后所有novostroyki的正则表达式