# glob-to-regexp 中文文档

规范地址：https://npmcn.com/package/glob-to-regexp/

版本：0\.4\.1
npm 元数据更新时间：2022-06-18T12:54:52.833Z
中文译文更新时间：2026-11-05T16:37:11.196Z
软件包许可：BSD-2-Clause

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/glob-to-regexp
原文对照：https://npmcn.com/package/glob-to-regexp/?lang=original
项目主页：https://github.com/fitzgen/glob-to-regexp#readme
源码仓库：https://github.com/fitzgen/glob-to-regexp

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：18.1 kB，5 个文件
- 模块格式：CommonJS
- TypeScript 类型：未声明
- 运行依赖：0 个
- 首次发布：2013-07-16T23:31:17.855Z
- 最新版本发布：2019-04-01T16:19:53.460Z
- 近 30 天下载量：178343455（2026-10-05 至 2026-11-03，npm 官方下载统计）
- 已发布版本数：8（近 12 个月 0 个）

## 中文简介

将 globs 转换为正则表达式

## 安装

```sh
npm install glob-to-regexp
```

也可以使用：`pnpm add glob-to-regexp`、`yarn add glob-to-regexp`、`bun add glob-to-regexp`

## README

# Glob 到正则表达式

[![Build Status](https://travis-ci.org/fitzgen/glob-to-regexp.png?branch=master)](https://travis-ci.org/fitzgen/glob-to-regexp)

转动 \*- wildcard 样式 glob(`"*.min.js"`)变成正则表达式 (单位:千美元)`/^.*\.min\.js$/`来!

来配合像相撞的花花公子. `?` 对于任何单一特征匹配, `[a-z]` 页:1 字符范围,以及 `{*.html, *.js}` 使用 `{ extended: true }`。 。 。 .

服从 [光荣之星 `**`](https://github.com/isaacs/node-glob#glob-primer) 规则设置选项 `{globstar: true}`。 。 。 . 注: 这改变了行为 `*` 何时 `globstar` 实值 `true` 如下所示: 何时 `{globstar: true}`数字 : `/foo/**` 将匹配任何开始的字符串 `/foo/` 喜欢 `/foo/index.htm`, (中文(简体) ), `/foo/bar/baz.txt`等 (中文(简体) ). 还有.., `/foo/**/*.txt` 将匹配 任何开头的字符串 `/foo/` 结尾 `.txt` 喜欢 `/foo/bar.txt`, (中文(简体) ), `/foo/bar/baz.txt`等 (中文(简体) ). 不过 `/foo/*` (单一) `*`,而不是光荣之星)将匹配从 `/foo/` 喜欢 `/foo/index.htm`, (中文(简体) ), `/foo/baz.txt` 但不会匹配字符串 包含一个 `/` 右边像 `/foo/bar/baz.txt`, (中文(简体) ), `/foo/bar/baz/qux.dat`等 (中文(简体) ).

在结果上设置标记 `RegExp` 对象通过添加 `flags` 属性到选项对象,例如 `{ flags: "i" }` 因为忽略案件.

## 安装

```
npm install glob-to-regexp
```

## 使用量

```js
var globToRegExp = require('glob-to-regexp');
var re = globToRegExp("p*uck");
re.test("pot luck"); // true
re.test("pluck"); // true
re.test("puck"); // true

re = globToRegExp("*.min.js");
re.test("http://example.com/jquery.min.js"); // true
re.test("http://example.com/jquery.min.js.map"); // false

re = globToRegExp("*/www/*.js");
re.test("http://example.com/www/app.js"); // true
re.test("http://example.com/www/lib/factory-proxy-model-observer.js"); // true

// Extended globs
re = globToRegExp("*/www/{*.js,*.html}", { extended: true });
re.test("http://example.com/www/app.js"); // true
re.test("http://example.com/www/index.html"); // true
```

## 许可证

版权 (c) 2013, Nick Fitzgerald

版权所有.

源和二进制形式的再分配和使用,无论是否修改, 允许满足下列条件:

-   源代码的再分配必须保留上述版权通知,这个 列出条件和下列免责声明.
    
-   二进制形式的再分配必须复制上述版权通知,这个 文件和/或文件中的下列免责声明 分发时提供的其他材料.
    

这个软件是由警察的 持有和贡献"是"和 包括但不受限制的、 对某一特别目的而言 分会。 连警察或捐款都无法抵偿 任何直接、间接、事件、特别、紧急、或后果 (包括,但不限制,实质性货物或服务的采购; 使用、数据、或赞助、或业务中断的损失 任何负债的理论,无论在合同、合同或合同中 以任何方式出现于此用途之外 苏发,即使咨询 的可能性 这样的灾难.

## 常见问题

### glob-to-regexp 是什么？

将 globs 转换为正则表达式

### 如何安装 glob-to-regexp？

在项目目录运行 npm install glob-to-regexp，或使用 pnpm add / yarn add / bun add。

### glob-to-regexp 支持 TypeScript 吗？

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

### glob-to-regexp 支持 ESM 还是 CommonJS？

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

### glob-to-regexp 可以商用吗？

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

### glob-to-regexp 的下载量有多少？

根据 npm 官方下载统计，glob-to-regexp 在 2026/10/05 – 2026/11/03 这 30 天内被下载 178,343,455 次，日均约 5,944,782 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### glob-to-regexp 还在维护吗？

最新版本 0\.4\.1 发布于 2019/04/02（7 年前）；至今共发布 8 个版本，其中过去 12 个月发布了 0 个；首次发布于 2013/07/17。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

