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

时间:2016-03-23 22:31:50

标签: javascript regex node.js gulp glob

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

或者甚至可能更简单,如何将最小化文件仅移动到最小/ {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;

});

然而它不起作用。

1 个答案:

答案 0 :(得分:1)

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

  

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

对于你的第二个问题,你试过没有逃避斜线和点吗?

  

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

cf:https://github.com/isaacs/node-glob