正则表达式重定向目标
Regex Redirect Destination
我需要根据 URL 的单个部分重定向多个页面,所以这些页面:
site/type1
site/type1/page1
site/type1/page2
site/type1/page3
需要重定向到:
site/type2
site/type2/page1
site/type2/page2
site/type2/page3
实际上涉及的页面不止4页。
我想我可以使用触发器:
(.*)/type2(.*)
但我对如何设置目的地感到困惑,以便它使用上一页的内容动态填充 URL 的其余部分。
欢迎提出任何想法。
谢谢。
您的语言可能支持用正则表达式替换。
这是您应该使用的正则表达式:
(.*\/)type1(\/.*|$)
这与您提出的有点不同。您的正则表达式将匹配 type2
而不是 type1
,但是您想从 type1
重定向到 type2
,对吗?我改的另一件事是第2组。如果你不希望像site/type1b
这样的东西变成site/type2b
,那么你应该把第二组写成\/.*|$
。
替换的话应该用type2
,也就是"the stuff captured in group 1, followed by type2
, followed by the stuff captured in group 2".
Here 是上述正则表达式和替换的在线演示。如果您不确定如何用正则表达式替换,可以使用 "code generator" 功能生成以您的语言执行此替换的代码。
您只需查找 site\/type1
并将其替换为 site\/type2
我用 vim 测试了它,对我来说效果很好 :%s/site\/type1/site\/type2/g
希望对你有帮助
我需要根据 URL 的单个部分重定向多个页面,所以这些页面:
site/type1
site/type1/page1
site/type1/page2
site/type1/page3
需要重定向到:
site/type2
site/type2/page1
site/type2/page2
site/type2/page3
实际上涉及的页面不止4页。
我想我可以使用触发器:
(.*)/type2(.*)
但我对如何设置目的地感到困惑,以便它使用上一页的内容动态填充 URL 的其余部分。
欢迎提出任何想法。
谢谢。
您的语言可能支持用正则表达式替换。
这是您应该使用的正则表达式:
(.*\/)type1(\/.*|$)
这与您提出的有点不同。您的正则表达式将匹配 type2
而不是 type1
,但是您想从 type1
重定向到 type2
,对吗?我改的另一件事是第2组。如果你不希望像site/type1b
这样的东西变成site/type2b
,那么你应该把第二组写成\/.*|$
。
替换的话应该用type2
,也就是"the stuff captured in group 1, followed by type2
, followed by the stuff captured in group 2".
Here 是上述正则表达式和替换的在线演示。如果您不确定如何用正则表达式替换,可以使用 "code generator" 功能生成以您的语言执行此替换的代码。
您只需查找 site\/type1
并将其替换为 site\/type2
我用 vim 测试了它,对我来说效果很好 :%s/site\/type1/site\/type2/g
希望对你有帮助