is-glob

中文文档
4.0.3发布于 2021/09/30MITCommonJS近 30 天下载 7.5亿

返回 true 如果给定的字符串看起来像一个glob模式或extglob模式。这使得创建仅在必要时使用node-glob等外部模块的代码变得容易,从而加快了代码执行和初始化时间,并打赌

中文使用文档
文档目录9 节
  1. 安装
  2. 用法
  3. 默认的行为
  4. 选项严格
  5. 关于
  6. 相关项目
  7. 贡献者
  8. 作者
  9. 许可证

is-glob NPM version NPM monthly downloads NPM total downloads Build Status

返回 true 如果给定的字符串看起来像一个glob模式或一个extglob模式。这使得创建仅在必要时使用外部模块 (如node-glob) 的代码变得容易,从而导致更快的代码执行和初始化时间,以及更好的用户体验。

请考虑跟随这个项目的作者, Jon Schlinkert,并考虑主演该项目,以展示您的: 心: 和支持。

安装

安装与 npm:

$ npm install --save is-glob

你可能也会感兴趣 是有效的全局匹配模式 和 has-glob。

用法

var isGlob = require('is-glob');

默认的行为

真正的

具有glob字符或正则表达式模式的模式将返回 true:

isGlob('!foo.js');
isGlob('*.js');
isGlob('**/abc.js');
isGlob('abc/*.js');
isGlob('abc/(aaa|bbb).js');
isGlob('abc/[a-z].js');
isGlob('abc/{a,b}.js');
//=> true

Extglobs

isGlob('abc/@(a).js');
isGlob('abc/!(a).js');
isGlob('abc/+(a).js');
isGlob('abc/*(a).js');
isGlob('abc/?(a).js');
//=> true

错误

转义的globs或extglobs返回 false:

isGlob('abc/\\@(a).js');
isGlob('abc/\\!(a).js');
isGlob('abc/\\+(a).js');
isGlob('abc/\\*(a).js');
isGlob('abc/\\?(a).js');
isGlob('\\!foo.js');
isGlob('\\*.js');
isGlob('\\*\\*/abc.js');
isGlob('abc/\\*.js');
isGlob('abc/\\(aaa|bbb).js');
isGlob('abc/\\[a-z].js');
isGlob('abc/\\{a,b}.js');
//=> false

没有glob模式的模式返回 false:

isGlob('abc.js');
isGlob('abc/def/ghi.js');
isGlob('foo.js');
isGlob('abc/@.js');
isGlob('abc/+.js');
isGlob('abc/?.js');
isGlob();
isGlob(null);
//=> false

阵列也是 false (如果要检查数组是否具有glob模式,请使用 has-glob):

isGlob(['**/*.js']);
isGlob(['foo.js']);
//=> false

选项严格

当 options.strict === false 在确定模式是否是glob时,行为不太严格。意思是 一些模式将返回 false 可能返回 true.这样做是为了使匹配的库像 micromatch 有机会确定该模式是否是glob。

真正的

具有glob字符或正则表达式模式的模式将返回 true:

isGlob('!foo.js', {strict: false});
isGlob('*.js', {strict: false});
isGlob('**/abc.js', {strict: false});
isGlob('abc/*.js', {strict: false});
isGlob('abc/(aaa|bbb).js', {strict: false});
isGlob('abc/[a-z].js', {strict: false});
isGlob('abc/{a,b}.js', {strict: false});
//=> true

Extglobs

isGlob('abc/@(a).js', {strict: false});
isGlob('abc/!(a).js', {strict: false});
isGlob('abc/+(a).js', {strict: false});
isGlob('abc/*(a).js', {strict: false});
isGlob('abc/?(a).js', {strict: false});
//=> true

错误

转义的globs或extglobs返回 false:

isGlob('\\!foo.js', {strict: false});
isGlob('\\*.js', {strict: false});
isGlob('\\*\\*/abc.js', {strict: false});
isGlob('abc/\\*.js', {strict: false});
isGlob('abc/\\(aaa|bbb).js', {strict: false});
isGlob('abc/\\[a-z].js', {strict: false});
isGlob('abc/\\{a,b}.js', {strict: false});
//=> false

关于

贡献

拉请求和明星总是受欢迎的。对于bug和特性请求, 请创建一个问题。

运行测试

运行和审查单元测试是熟悉库及其API的好方法。可以使用以下命令安装依赖项并运行测试:

$ npm install && npm test
建立文档

(这个项目的自述。Md由 动词请不要直接编辑自述文件。对自述文件的任何更改都必须在 .verb.md 自述文件模板)。

使用实例生成自述文件。

$ npm install -g verbose/verb#dev verb-generate-readme && verb

你也可能对这些项目感兴趣:

  • 组装: 把袜子里的石头拿出来!Assemble让你快速创建web项目… 更多的 | 首页
  • 基础: 使用构建块等插件快速创建高质量服务器端node.js应用程序的框架 | 首页
  • 更新: 可扩展!Update是一个新的开源开发人员框架和CLI,用于自动更新… 更多的 | 首页
  • 动词: GitHub项目的文档生成器。动词是非常强大的,易于使用,并使用… 更多的 | 首页

贡献者

| 提交 | 贡献者 |
| --- | --- |
| 47 | jonschlinkert |
| 5 | doowb |
| 1 | 酷毙了 |
| 1 | 丹珀 |
| 1 | 鲍尔米尔 |

作者

Jon Schlinkert

许可证

版权所有©2019 Jon Schlinkert。 根据 麻省理工学院的许可。


该文件由 动词-生成-自述文件, v0.8.0, 2019年3月27日。

版本与发布记录

is-glob 共发布 16 个版本,首次发布于 2014/12/18;过去 12 个月发布了 0 个版本。

版本发布日期距今
4.0.3latest2021/09/305 年前
4.0.22021/09/275 年前
4.0.12019/03/287 年前
4.0.02017/08/089 年前
3.1.02016/10/1310 年前
3.0.02016/09/0410 年前

关于 is-glob 的常见问题

is-glob 是什么?

返回 true 如果给定的字符串看起来像一个glob模式或extglob模式。这使得创建仅在必要时使用node-glob等外部模块的代码变得容易,从而加快了代码执行和初始化时间,并打赌

如何安装 is-glob?

在项目目录运行 npm install is-glob,或使用 pnpm add / yarn add / bun add。

is-glob 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/is-glob 是否存在。

is-glob 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

is-glob 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=0.10.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

is-glob 可以商用吗?

is-glob 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

is-glob 的下载量有多少?

根据 npm 官方下载统计,is-glob 在 2026/10/04 – 2026/11/02 这 30 天内被下载 749,779,950 次,日均约 24,992,665 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

is-glob 还在维护吗?

最新版本 4.0.3 发布于 2021/09/30(5 年前);至今共发布 16 个版本,其中过去 12 个月发布了 0 个;首次发布于 2014/12/18。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。