【发布时间】:2020-08-28 08:52:39
【问题描述】:
我有一个字符串'/blog/:year/:month/:day/:slug',希望能匹配下面的结果。
["/blog/:year/", "/blog/:year/:month/", "/blog/:year/:month/:day/"]
请
例如
const str = '/blog/2020/05/12/first'
// output: ['/blog/2020', '/blog/2020/05', '/blog/2020/05/12']
// or ['/blog/2020/', '/blog/2020/05/', '/blog/2020/05/12/']
例如
const reg = '/blog/:year/:month/:day/:slug'
const result = reg.split('/').reduce((a, b) => {
a = Array.isArray(a) ? a : []
a.push([a[a.length - 1], b].join('/'))
return a
})
console.log(result.slice(1, -1))
// output: ['/blog/:year', '/blog/:year/:month', '/blog/:year/:month/:day']
【问题讨论】:
-
您好,请使用 Stackoverflow 的tour。
-
您的预期结果是什么?你的实际结果是什么?以及如何实现您的实际结果(post code)?
标签: javascript regex match