【发布时间】:2018-11-06 04:30:59
【问题描述】:
我已经了解了如何使用(?i) 来忽略大小写,以便在 URL 中查找匹配的单词。这很好用。但这个问题不同。
我有这个网址:
https://www.publictalksoftware.co.uk/public_talks/HelpOnline/source/ASSIGN.HTM
应该是:
https://www.publictalksoftware.co.uk/public_talks/helponline/source/assign.htm
所以基本上我在这里尝试做三件事:
- 找到所有
https://www.publictalksoftware.co.uk/public_talks/HelpOnline/source/*链接。 - 强制
helponline为小写 - 强制
*值小写。 - 所以重定向变成
https://www.publictalksoftware.co.uk/public_talks/HelpOnline/source/LOWER-CASE-OF-*
我可以通过使用正则表达式的 Wordpress 301 重定向插件来做到这一点吗?
更新 1
目前我已经做到了这一点:
来源:/msa/(?i)helponline/(.*)$
目标:https://www.publictalksoftware.co.uk/msa/helponline/$1
通过忽略案例来满足helponline 方面的需求。但是最后一个通配符呢,在目标中称为$?我需要将其强制为小写。
更新 2
我尝试使用\L$1 将最后一个标记强制为小写,但这似乎也不起作用。 #困惑
更新 3
我尝试了第一个答案,但它似乎破坏了重定向。可能是插件问题。然后事情是我正在使用大括号,所以我已经定义了一个组。所以我不明白为什么我不能在注释前加上 $1。我可能会尝试使用 htaccess 文件来代替。
【问题讨论】: