0

我创建了以下正则表达式来查找与完整路径中的单词匹配且不包含点字符的 url。

(\path\?*)([^.]*)$

它适用于https://www.regex101.com/#javascript,但在我定义此连接任务时连接任务中的咕噜声:

middleware: function(connect, options) {
 var middlewares = [];

 middlewares.push(modRewrite(["(\path\?*)([^.]*)$ /home.html [L]"])); 
    options.base.forEach(function(base) {
      middlewares.push(connect.static(base));
    });
    return middlewares;
  }

我收到此错误:Invalid regular expression: /(home?*)([^.]*)$/: Nothing to repeatIDE 在“路径”字之间的两个斜杠 (\path\) 中警告我。

为什么我可以使用那些斜线?我可以用什么来代替那些斜线?非常感谢

4

2 回答 2

2

The\是 javascript 中的一个特殊字符,因此如果您打算使用它,则需要对其进行转义。您可以通过添加另一个\. 前任:\\

于 2015-01-19T15:03:01.297 回答
0

反斜杠属于“Javascript 特殊字符”

因为您在双引号字符串中使用反斜杠,所以您必须将每个反斜杠写两次以告诉解析器您实际上想要输出一个反斜杠。这在双引号和单引号字符串中是强制性的。

您可以浏览文档 .. 例如MDN 文档

然后搜索“JavaScript 特殊字符”

于 2015-01-19T15:09:43.227 回答