PHP正则表达式匹配排除了几个URL

PHP正则表达式匹配排除了几个URL,php,regex,Php,Regex,我的URL匹配有问题!例如: 我们有URL(字符串): /,/news,/news/1-addsf,/articles,/guides等 和任务:获取所有的匹配,除了所有以“/news”(with或w/o continue)/1-addsf)开头,需要regexp和“/articles”和“/” 我尝试smth,如下所示: #([^\/news.*]|[^\/articles])#is #\/[^(news.*|articles)]#is #^\/(^news|^articles)#is 以及

我的URL匹配有问题!例如: 我们有URL(字符串): /,/news,/news/1-addsf,/articles,/guides等

和任务:获取所有的匹配,除了所有以“/news”(with或w/o continue)/1-addsf)开头,需要regexp和“/articles”和“/”

我尝试smth,如下所示:

#([^\/news.*]|[^\/articles])#is
#\/[^(news.*|articles)]#is
#^\/(^news|^articles)#is
以及许多其他变体

我想,我不知道smth或者我是一个糟糕的谷歌人,但我找不到smth来回答这个问题

需要工作的regexp!谢谢


p、 对不起,我的英语不好。

看来你想要的是

#^/(?!news|articles).*#is
上述正则表达式匹配所有url字符串,但以
/news
/articles
开头的字符串除外


这不是一个人们帮助你完成家庭作业的网站,它提供了示例输入和预期输出。仅此而已!非常感谢。p、 美国可能会改变这个问题,让它更具搜索性吗?或者任何自定义标记?\b是不需要的,但像这样的smth工作正确^/(?!$;news$)-它匹配字符串,如“/news/1-asddf”,不匹配“/”和“/news”p.s.我不知道如何正确键入,抱歉。但这并不是一个家庭作业(供上传评论),这是为了在网站上进行简单的横幅旋转:)谢谢!