【问题标题】:how to write a path using regexp如何使用正则表达式编写路径
【发布时间】:2019-05-12 22:46:54
【问题描述】:

所以我需要弄清楚如何将以下路径写入正则表达式

/私人/工具箱/*

我不知道该怎么做,因为 *

我已经添加了以下 2 条没有问题的路径

/私人/健康检查

/private/datadog/仪表板

        .type(RegExp)).default([/^\/private\/metrics/, /^\/private\/datadog\/dashboards/,/^\/private\/healthcheck/, /^\/alive.txt/]),

【问题讨论】:

  • 您是在字面上匹配字符*,还是星号表示通配符?
  • * 是一个通配符
  • 你不能对所有这些路径使用一个正则表达式吗? ^/(?:private/(?:toolbox/\*|metrics/|datadog/dashboards/|healthcheck/)|alive\.txt) 或引用/^\/(?:private\/(?:toolbox\/\*|metrics\/|datadog\/dashboards\/|healthcheck\/)|alive\.txt)/
  • 一般来说,您应该能够在正则表达式中将 Windows 样式路径通配符 * 替换为 .* 并获得相同的结果。

标签: javascript arrays regex object


【解决方案1】:

(?:\/private\/toolbox\/)(.+) 应该匹配你的路由路径,捕获通配符作为第一组:

const path  = '/private/toolbox/whichever';
const match = path.match(/(?:\/private\/toolbox\/)(.+)/);

console.log(match);

但是,我无法谈论 RegExp 的表现。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-22
    • 1970-01-01
    • 2017-02-21
    • 2020-11-06
    • 2021-07-29
    相关资源
    最近更新 更多