javascript 带有标记“\”的无效正则表达式
javascript Invalid regular expression with token '\'
我创建了以下正则表达式来查找 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 repeat
和 IDE 在 'path ' 单词之间的两个斜杠 (\path\) 中警告我。
为什么我可以使用那些斜杠?
我可以用什么来代替那些斜杠?
非常感谢
\
是 javascript 中的一个特殊字符,因此如果您打算使用它,则需要对其进行转义。您可以通过添加另一个 \
来转义它。例如:\
反斜杠属于 "Javascript special characters"
因为您在双引号字符串中使用反斜杠,所以您必须将每个反斜杠写两次以告诉解析器您实际上想要输出一个反斜杠。
这在双引号和单引号字符串中是强制性的。
您可以浏览文档.. 例如 MDN documentation
然后搜索"JavaScript special characters"
我创建了以下正则表达式来查找 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 repeat
和 IDE 在 'path ' 单词之间的两个斜杠 (\path\) 中警告我。
为什么我可以使用那些斜杠? 我可以用什么来代替那些斜杠? 非常感谢
\
是 javascript 中的一个特殊字符,因此如果您打算使用它,则需要对其进行转义。您可以通过添加另一个 \
来转义它。例如:\
反斜杠属于 "Javascript special characters"
因为您在双引号字符串中使用反斜杠,所以您必须将每个反斜杠写两次以告诉解析器您实际上想要输出一个反斜杠。 这在双引号和单引号字符串中是强制性的。
您可以浏览文档.. 例如 MDN documentation
然后搜索"JavaScript special characters"