简介
minimatch
是一个轻量级、高性能的通配符匹配工具,旨在实现字符串的简单模式匹配。它是npm包管理器中的一个重要组件,广泛应用于前端开发中。
minimatch
的特点:
- 支持通配符
- 支持多种匹配规则
- 提供了方便的API接口
- 高效、可靠
安装
使用npm
进行安装:
npm install minimatch --save
使用示例
基本用法
-- -------------------- ---- ------- ----- --------- - --------------------- -- -------------- ---------------------------- ------- ----------- -- ---- ---------------------------- ------- --------- -- ----- -- --------- -------------------------------- -- - ---- ------ ---------- ------ ---------- ----- ------- ------ --------- ------ ------- ------ ----------- ----- - -- -- ------ ---------------------- - ----- ---------------------------------- --------- -- ----
高级用法
const minimatch = require('minimatch'); // 匹配所有文件夹下的.js文件 console.log(minimatch.filter(['./index.js', './src/main.js', './src/utils/util.js'], '**/*.js')); // 匹配所有文件夹下的.js文件,并排除node_modules文件夹 console.log(minimatch.filter(['./index.js', './src/main.js', './src/utils/util.js', './node_modules/vue/index.js'], ['**/*.js', '!**/node_modules/**/*']));
API
minimatch(pattern[, options])
判断一个字符串是否匹配给定的模式。
minimatch('hello world', 'hello*');
参数
- pattern: string类型,要匹配的模式。
- options: object类型,可选参数。可以包含以下属性:
- debug: boolean类型,是否开启调试模式。
- dot: boolean类型,是否开启
.
匹配模式。 - matchBase: boolean类型,是否从模式的开始进行匹配。
- nocomment: boolean类型,是否开启注释忽略模式。
- nocase: boolean类型,是否不区分大小写。
- nonegate: boolean类型,是否不支持
!
排除模式。 - nonull: boolean类型,是否返回空数组。
- flipNegate: boolean类型,是否反转排除模式。
minimatch.makeRe(pattern[, options])
将给定的模式编译为正则表达式对象。
const regExp = minimatch.makeRe('hello*', { nocase: true });
参数
- pattern: string类型,要编译的模式。
- options: object类型,可选参数。可以包含以下属性:
- debug: boolean类型,是否开启调试模式。
- dot: boolean类型,是否开启
.
匹配模式。 - matchBase: boolean类型,是否从模式的开始进行匹配。
- nocomment: boolean类型,是否开启注释忽略模式。
- nocase: boolean类型,是否不区分大小写。
- nonegate: boolean类型,是否不支持
!
排除模式。 - nonull: boolean类型,是否返回空数组。
- flipNegate: boolean类型,是否反转排除模式。
minimatch.filter(patterns[, options])
筛选符合给定模式的文件或文件夹。
minimatch.filter(['./index.js', './src/main.js', './src/utils/util.js'], '**/*.js');
参数
- patterns: string[]类型,要筛选的字符串数组。
- options: object类型,可选参数。可以包含以下属性:
- debug: boolean类型,是否开启调试模式。
- dot: boolean类型,是否开启
.
匹配模式。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/50978