RegEx,匹配如果不包含

时间:2010-03-17 09:21:54

标签: regex

我一直在试图弄清楚如何编写这个正则表达式。它将用于ISAPI_Rewrite,这是IIS 6的一个模块,用于进行URL重写。

我想要对网址/hg/<parameter>进行匹配,因此可以将其重新设为/hg/hgwebdir.cgi/<parameter>

我使用^/hg/(.*)匹配了它。

我的问题是,如果使用网址/hg/hgwebdir.cgi/<parameter>,则正则表达式不匹配。将上述正则表达式与此URL一起使用,将重写为/hg/hgwebdig.cgi/hgwebdig.cgi/<parameter>,这是不正确的。

你能帮我创建匹配模式吗?

1 个答案:

答案 0 :(得分:3)

您可以使用negative lookahead执行此操作:

"^/hg/(?!hgwebdir.cgi)(.*)"

http://www.regular-expressions.info/tutorial.html是正则表达式的绝佳教程。 =)