我正在尝试编写重定向规则,但我不知道如何排除某个特定情况
我需要重定向所有包含"图像"在网址中以" / images"开头的网址,但" / images"不应该匹配。
这匹配任何以" images"
开头的内容^(images)[/](.*)$/i
这不包括" / images"
^[^\/](images)[/](.*)$/i
这匹配" / images"
之前具有更多细分的任何内容 ^.*(images)[/](.*)$/i
如何将这三者结合起来以便匹配
/asdf/images/sadf.png
图像/ asdf.png
但这个不是
/images/sadf.png
答案 0 :(得分:1)
试试这个:
^(?!/images\b).*\bimages\b.*
使用\b
(字边界)会停止匹配unimagestrate
等输入。
答案 1 :(得分:0)
试试这个:
/^(?!\/images).*images\/.*$/
这将执行以下操作:
从行首开始^
(?!\/images)
如果第一件事是" / images"
,则不匹配
.*
匹配任何字符(可选) - 如果您的路线中不存在某些字符,则可以限制此项
images\/
匹配" images /"的任何实例;这与先前的断言并不矛盾