正则表达式将所有流量重定向到新路径,但以指定字符串结尾除外

Regex to redirect all traffic to new path except ending with specified string

我正在尝试将所有流量从 wwww.mydomain.com/site/ 重定向到 wwww.mydomain.com,但最后包含 /events/ 的 URL 除外。我现在正在使用以下正则表达式来满足大多数情况:
资料来源:^/cra/(?!events)(.*)
目标:/
它会重定向所有流量,但包含 events as string in URL 的流量除外,但此正则表达式的问题是,它不会将 wwww.mydomain.com/site/events/myevent 重定向到 wwww.mydomain.com/events/myevent 我也找不到可以解决提到的用例的东西,如果有人能帮助我,那就太好了。

如果我对你的问题的理解正确,你想重定向来自

的所有内容
/site/*

/

但是:如果它包含

/events/

最后:完全不要重定向

如果这就是您想要做的,那么这应该可行。

^(?!.*(events\/\Z))(\/site\/)(.*)

使用 $3 访问重定向后要保留的部分。

提示:regex101 是一个非常好的网站,可以用来理解和使用正则表达式。

请注意,这仅在“事件/”部分有尾随“/”的情况下有效。但我想你可以在那里工作。

编辑: 根据 Zohaib 的评论进行了调整