正则表达式 匹配问题

大家好,请教一个关于正则表达式匹配的问题:

const str = 'npm xxxx com npm xxxxx com npm javascript net npm xxx com'

前面会有N多个npm出现 但是只匹配距离net结尾 最近的npm 之间的内容 也就是第三个 npm 到 net 之间的内容 (npm 到 net 之间的内容不固定)

自己撸了一个 发现只能从最开始 匹配到结尾 (前提不用split)

最后

十分感谢大家的回答

阅读 2.7k
3 个回答
/(?:npm.+?)*npm(.*)net/

被转义了

str.match(/^npm(.*?)net/)[1]

// 这是你想要的??
const str = 'npm xxxx com npm xxxxx com npm javascript net npm xxx com'

let res = str.match(/npm(.*?)net/)

console.log(res)
// ["npm xxxx com npm xxxxx com npm javascript net", " xxxx com npm xxxxx com npm javascript ", index: 0, input: "npm xxxx com npm xxxxx com npm javascript net npm xxx com"]
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题