js正则匹配问题

请问一下各位dalao

如何从 /pages/i/i-up-dcim/i /pages/i/i-up-dcim/pages/i/i-up-dcim/i-up-dcim中提取i-up-dcim
即从 /pages/i/*/i /pages/i/*/pages/i/*/i-up-dcim中提取星号*中的内容且*的内容有变化

本人尝试使用以下方法无法解决

var regex = /pages\/i\/(.*)/;
let id = route.match(regex)
console.log(id)
阅读 1.8k
2 个回答
var regex = /(?<=pages\/i\/)[^\/]+/;
let id = route.match(regex)
console.log(id[0])

换一个描述方式:取 /pages/i/ 后面的第一级路由

demo('/pages/i/i-up-dcim/i') // => i-up-dcim
demo('/pages/i/i-up-dcim') // => i-up-dcim
demo('/pages/i/i-up-dcim/i-up-dcim') // => i-up-dcim

function demo (str) {
  str = str.replace(/.*\/pages\/i\/([^\/]+)?.*/, '$1')
  console.log('结果', str)
  return str
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题