Gulp.src() 的路径参数内的正则表达式

Regex inside path parameter of Gulp.src()

如何通过正则表达式或通配符从 gulp.src(glob?)文件路径中排除最小化文件?

或者甚至更简单,如何将最小化的文件仅移动到它们的 min/{javascript|css} 文件夹?

我试过以下方法:

var dir = "./src/",
    lib_dir = "./lib/";

gulp.task("movelib", function(){

    gulp.src(lib_dir + "libraries\/.*\.min\.js")
        .pipe(plumber({errorHandler: function(e){console.log(e); this.emit('end');}}))
        .pipe(gulp.dest("./dist/assets/min/js"));

    gulp.src(lib_dir + "libraries\/.*(?!\.min)\.js")
        .pipe(plumber({errorHandler: function(e){console.log(e); this.emit('end');}}))
        .pipe(gulp.dest("./dist/assets/js"));

    gulp.src(lib_dir + "libraries\/.*\.min\.css")
        .pipe(plumber({errorHandler: function(e){console.log(e); this.emit('end');}}))
        .pipe(gulp.dest("./dist/assets/min/css"));

    gulp.src(lib_dir + "libraries\/.*(?!\.min)\.css")
        .pipe(plumber({errorHandler: function(e){console.log(e); this.emit('end');}}))
        .pipe(gulp.dest("./dist/assets/css"));

    return;

});

然而它不起作用。

排除min.js文件,怎么样?

gulp.src(lib_dir + "libraries/!(.min.js|.min.css)")

关于你的第二个问题,你试过不转义斜杠和点吗?

gulp.src(lib_dir + "libraries/*.min.js")

对比:https://github.com/isaacs/node-glob