前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >gulp .src()匹配模式详解

gulp .src()匹配模式详解

作者头像
薛定喵君
发布2019-11-06 00:38:12
1.8K0
发布2019-11-06 00:38:12
举报
文章被收录于专栏:薛定喵君薛定喵君

记一下gulp.src()用法

语法

gulp.src(globs[, options])

  • globs:文件匹配模式(类似正则表达式),用来匹配文件路径(包括文件名)
  • options:可选参数。通常情况不需要用到
代码语言:javascript
复制
js
gulp.src('**/*.js')

匹配模式

内部使用node-glob模块实现文件匹配

单匹配

匹配符

code

匹配

不匹配

备注

*

*

a.b, x.y, abc, abc/

a/b.js

不匹配/,除非/出现在末尾

*.*

a.b, x.y

abc

匹配所有带后缀的文件

*/*/*.js

a/b/c.js, x/y/z.js

a/b.js, a/b/c/d.js

匹配固定层级目录

**

**

abc, a/b, a/b.js, a/b/c, a/b/c.js

匹配所有的目录和文件

**/*.js

a.js, a/b.js, a/b/c.js

匹配所有目录下的 .js 文件

a/**/z

a/z, a/b/z, a/b/c/z, a/b/c/d/z

a/**b/z

a/b/z, a/nb/z

a/c/nb/z,

** 单独出现才能匹配多级目录

?

?.js

a.js, b.js, c.js

占位符匹配,不匹配 /

a??

a.b, abc

ab/

占位符与字符搭配使用

[]

[abc].js

a.js, b.js, c.js

ab.js, xyz.js

整个 [] 只匹配一个字符

[^abc].js[!abc].js

x.js, y.js

a.js, b.js, c.js

排除匹配字符

多匹配模式(同时使用多种匹配)
  • 类正则

表达式

备注

!(pattern|pattern|pattern)

匹配任何与括号中给定的任一模式都不匹配的

?(pattern|pattern|pattern)

匹配括号中给定的任一模式0次或1次,类似于js正则中的(pattern|pattern|pattern)?

+(pattern|pattern|pattern)

匹配括号中给定的任一模式至少1次,类似于js正则中的(pattern|pattern|pattern)+

*(pattern|pattern|pattern)

匹配括号中给定的任一模式0次或多次,类似于js正则中的(pattern|pattern|pattern)*

@(pattern|pattern|pattern)

匹配括号中给定的任一模式1次,类似于js正则中的(pattern|pattern|pattern)

  • 数组
    • 使用数组匹配多种模式
    代码语言:javascript
    复制
    js
    gulp.src(['js/*.js', 'css/*.css', '*.html'])
    • 数组 + 排除,排除模式不能出现在数组的第一个元素中
    代码语言:javascript
    复制
    js
    gulp.src([*.js,'!b*.js']) // 匹配所有js文件,但排除掉以b开头的js文件
    gulp.src(['!b*.js',*.js]) // 不排除任何文件,因为排除模式不能出现在数组的第一个元素中
  • 展开
    • {} 作为定界符,根据它里面的内容,会展开为多个模式, 最后匹配的结果为所有展开的模式相加起来得到的结果
  1. a{b, c}d 展开为:abc,acd
  2. a{b,}c 展开为:abc,ac
  3. a{0..3}c 展开为:a0c,a1c,a2c
  4. a{b, c{d, e}f}g 展开为:abg,acdfg,acefg
  5. a{b, c}d{e, f}g 展开为:abdeg,acdeg,abdeg,abdfg
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-09-07 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 语法
  • 匹配模式
    • 单匹配
      • 多匹配模式(同时使用多种匹配)
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档