正则表达式URL重写
这是我在这里的第一篇文章,我必须承认我对正则表达式的了解很少。正则表达式URL重写
我们最近升级我们的内部网,从SharePoint 2003年至2010年。在这个过程中,我们打破了单一网站到多个站点集合里面添加/sites
到的URL不同站点
例如
http_://intranet/global > http_://intranet/sites/global
http_://intranet/workplaces > http_://intranet/sites/workpaces
我试图用正则表达式玩弄重新写静态URL重写包括/sites
您应该看到最后两个记录不被WR-正确写入。任何人都可以帮助我创建正确的规则吗?
正则表达式
您可以使用此:
/^(http://[^/]+)?/(?!(?:sites|SitePages)/)(.* )$ /毫克
以此替代
\ 1 /位点/ \ 2
DEMO
http://regex101.com/r/zH6dZ5
成绩
http://intranet/global > http://intranet/sites/global /sites/global > /sites/global /page/file.ext > /sites/page/file.ext /sites/other > /sites/other /page.ext > /sites/page.ext /intranet/global > /sites/intranet/global http_://intranet/SitePages/default.aspx > http_://intranet/SitePages/default.aspx
嗨亚历克斯,谢谢非常多的回应。我刚刚完成了一些测试,并且您的建议看起来很棒。我有一个最后的问题,虽然... 我们的着陆页网址是:http_://intranet/SitePages/default.aspx 似乎这是重写到http_:// intranet/sites/SitePages/default .aspx失败 - 你知道一个去掉这个URL吗? – user2376875 2013-05-13 14:19:11
我已经使用新的正则表达式和演示版更新了我的文章,包括您的着陆页案例。 HTH – Stephan 2013-05-13 14:26:56
嗨,再次感谢...哇,这是一个快速回复。 刚刚发现问题的表达式: http://regex101.com/r/qQ2mB2 - 第一行是重写错误的方式。 – user2376875 2013-05-13 14:40:15
你应该包括这个问题中的正则表达式了。这样,如果链接停止工作,人们仍然能够看到它。 – Ren 2013-05-13 08:47:12