正则表达式从 node_modules 中排除文件夹

Sop*_*des 3 regex webpack

我目前正在使用 webpack 并运行一项测试,该测试会遍历 node_modules 并排除一个特定模块。

然而,当我在正则表达式检查器上尝试它时,我正在努力处理正则表达式,并且它工作得很好。然而,在 webpack 上却失败了。

示例: https: //regex101.com/r/rO4jD0/34

^node_modules\/(?!example).*
Run Code Online (Sandbox Code Playgroud)

在 webpack 本身上,我编写以下内容:

vendor: {
    test: /^[\\/]node_modules[\\/](?!example).*[\\/]/,
    // test: /^[\\/]node_modules[\\/](?!example)[\\/].*/,
    // test: /^node_modules\/(?!example).*/,
    name: 'vendor',
    chunks: 'all',
}
Run Code Online (Sandbox Code Playgroud)

这些测试是我迄今为止运行的测试的示例,但不幸的是它们都失败了。

仅供参考- 这工作正常,但它排除该示例文件夹。

test: /[\\/]node_modules[\\/]/,
Run Code Online (Sandbox Code Playgroud)

pul*_*ies 5

这是为了将大型供应商模块拆分为自己的捆绑包吗?我是这样做的:

vendor: {
  name: 'vendor',
  test: /[\\/]node_modules[\\/]((?!(example.js|slick-carousel)).*)[\\/]/,
  name: 'vendors',
  chunks: 'all'
},
v_example: {
  test: /[\\/]node_modules[\\/]((example.js).*)[\\/]/,
  name: 'v_example',
  chunks: 'all'
},
v_slick: {
  test: /[\\/]node_modules[\\/]((slick-carousel).*)[\\/]/,
  name: 'v_slick',
  chunks: 'all'
}
Run Code Online (Sandbox Code Playgroud)