RegEx |匹配字符串不以特定单词开头

时间:2013-06-10 11:17:08

标签: regex apache mod-rewrite regex-negation

我正在编写一些mod_rewrite正则表达式,我有几个看起来像这样的请求网址

use1mycompany
use2mycompany
use3mycompany
use4mycompany

但我也有一些以

开头的请求URI
mycompany/user1mycompany/
mycompany/user2mycompany/
mycompany/user3mycompany/
mycompany/user4mycompany/

为了解决该问题,我在apachec mod_rewrite

中使用了以下正则表达式
^(.*)mycompany/?$

问题是我的正则表达式将userXmycomany URL和mycopmany / userXmycompany /

结合起来

所以,问题是,如何匹配不以字符串“mycompany”开头但以字符串“mycompany”结尾的网址?

亲切的问候

2 个答案:

答案 0 :(得分:4)

(?<!mycompany)/.*(?<=mycompany)/?

将匹配/ user1mycompany /但不匹配mycompany // user1mycompany /

答案 1 :(得分:1)

您应该匹配mycompany之前至少有一个字符的字符串。

*表示0或更多。 +表示1个或更多。

^(.+)mycompany/?$