用于快速路由器 url 的正则表达式以匹配以 /public/ 开头的路径

kal*_*lki 5 regex url-routing node.js express

要求:需要匹配所有以/public/ token开头的url 。

我尝试过的:我尝试了下面的正则表达式来匹配所有以 /public/ 开头的路径

正则表达式: /\/public\/.*/

当我在 regex101 中使用它时,它能够匹配以 /public/ token 开头的 url

但是当在 Express 路由器测试器(http://forbeslindesay.github.io/express-route-tester/?_ga=1.180272292.1056934125.1459765156)中尝试相同时,它不起作用

任何人都可以帮助我知道它不起作用的原因!

示例代码:

我的期望是所有用 /public/ 令牌声明的 URL 都应该通过这条路线

router.route(/\/public\/.*/)
        .get(function(req, res, result){
            // TODO
        });
Run Code Online (Sandbox Code Playgroud)

例子:

https://localhost:8082/public/styles/styles.css
https://localhost:8082/public/js/rs.css
https://localhost:8082/public/images/qq.png
Run Code Online (Sandbox Code Playgroud)

Wik*_*żew 5

请参阅此注释

Express Route Tester是一个用于测试基本 Express 路由的便捷工具,尽管它不支持模式匹配

正则表达式可以与以下 Express 语法一起使用:

app.get(/\/public\/.*/, function(req, res) { 
   res.send('/\/public\/.*/'); 
});
Run Code Online (Sandbox Code Playgroud)

但是,您似乎可以使用更简单的通配符模式route.route

router.route('/public/*')
Run Code Online (Sandbox Code Playgroud)

其中*匹配任意 0+ 个字符。