RewriteRule中^的含义是什么?

时间:2017-10-03 19:41:15

标签: apache mod-rewrite

我在Apache文档中搜索了2.4版本(看起来有点混乱),寻找我的问题的答案。我相信它构成了规则模式语义的一部分 RewriteRule 模式目标标志但无法找到解释这么简单的问题而且来源不明确。

2 个答案:

答案 0 :(得分:1)

ModRewrite使用正则表达式来匹配规则以请求URI,^字符是大多数正则表达式方言中的标准元字符。它有两个不同的目的:

  • 当它出现在模式的开头时,它会锚定模式,使其必须在输入开始时匹配。如果没有这个,大多数正则表达式方言都会将模式与输入的任何部分匹配:^foo匹配foofoobar,但不匹配Redfoo

  • 当它作为字符类中的第一个字符出现时,它会否定类的意义。因此,[abcd]匹配afoodcaca,但不匹配mutton,而[^abcd]匹配food和{{1}但不是muttona

答案 1 :(得分:0)

来自this website的文档:

  

负字符类 - 匹配未指定的任何字符