gpt4 book ai didi

regex - 正则表达式开头的感叹号和结尾的美元符号是什么?

转载 作者:行者123 更新时间:2023-12-01 23:47:13 24 4
gpt4 key购买 nike

我正在使用 Mean.io,并在 modRewrite 函数中看到了一个正则表达式:

app.use(modRewrite([

'!^/api/.*|\\_getModules|\\.html|\\.js|\\.css|\\.mp4|\\.swf|\\.jp(e?)g|\\.png|\\.gif|\\.svg|\\.ico|\\.eot|\\.ttf|\\.woff|\\.pdf$ / [L]'

]));

据我所知,他们正在尝试通过替换包含以下内容的任何网址来将网址重写得更漂亮:

/api/, _getModules, .html, .js, ..., .pdf

但是,我一直在搜索以理解正则表达式,但仍然无法弄清楚行开头的 !^$ 是什么在线的末尾。有人可以逐步提取正则表达式吗?

最佳答案

根据Apache mod_rewrite Introduction :

In mod_rewrite the ! character can be used before a regular expression to negate it. This is, a string will be considered to have matched only if it does not match the rest of the expression.

^$regex anchors分别断言字符串开头和结尾的位置。

要了解其余部分,您可以浏览 What does the regex mean发布。

正则表达式本身是:

  • ^ - 断言字符串位置的开头并...
  • /api/.* - 按字面匹配 /api/ 和除换行符之外的 0 个或多个字符
  • | - 或者...
  • \\_getModules - 匹配 _getModules
  • | - 或者
  • \\.html - 匹配 .html
  • |\\.js|\\.css|\\.mp4|\\.swf|\\.jp(e?)g|\\.png|\\.gif|\\. svg|\\.ico|\\.eot|\\.ttf|\\.woff| - 或这些扩展名(注意它将匹配 jpgjpeg as ? 表示匹配前面模式的 0 或 1 次出现)
  • \\.pdf$ - 匹配字符串末尾的 .pdf ($)。

关于regex - 正则表达式开头的感叹号和结尾的美元符号是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31876322/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com