javascript - Sails.js - 使用正则表达式的 sails 路线

标签 javascript node.js sails.js

我正在使用 sails 0.11.2。在这里,我面临着定义以 '/source/< 这里有任何内容>/< 末尾不得包含 .js 扩展名>' 开头的路由模式的问题

正则表达式:/^\/source.*(?<!.js)$/i在java脚本中工作正常,但是当我将其放入 sails route 时。

出现错误:Invalid regular expression: /^r|\/^\/source\.(.*)(?<!\.js)$\/i\/?$/: Invalid group .

路由语法:

    'r|/^\/source.*(?<!.js)$/i' : {
    controller: 'pageController',
    action: 'pageAction'
  }    

请帮我看看哪里出了问题以及如何纠正?

最佳答案

Javascript不支持lookbehind (?<!)相反,您可以使用负前瞻 (?!)

还有/.../i部分不应出现在正则表达式字符串中

所以有效的表达式应该是: ^\/source(.(?!\\.js$))*$

关于javascript - Sails.js - 使用正则表达式的 sails 路线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50834926/

相关文章:

node.js - 为什么 Mongoose 打开两个连接?

java - 构建供多个平台使用的 Web 服务 - 我应该使用什么格式?

node.js - ER_ACCESS_DENIED_ERROR : Access denied for user 'root' @'localhost' in cloud9 ide

postgresql - 在 Sails.js 中处理具有数字数据类型的数据库列的最佳方法是什么?

JavaScript 未定义检查

javascript - 如何在 Bootstrap Navbar 中激活所有按钮

javascript - 走出一个表情

javascript - 如何通过 Node.js 连接到 SQLite3

node.js - 如何使用 Node.js 读取大文件的一部分?

javascript - 如何使用回调函数的异步等待从异步函数返回值?