跳到主要内容

Glob 通配符匹配测试器,匹配路径并看等价正则

测 glob 匹配哪些路径,支持 * ** ? [a-z] {js,ts} 与 ! 全套语法,同时显示等价正则,浏览器本地运算不上传

  • 本地处理
  • 分类 开发运维
  • 适合 分享前检查文件类型、大小、元数据和明显不匹配信号。
等价正则
/^src/(?:.*/)?[^/]*\.ts$/
摘要
3 匹配 6
  • src/index.ts✓ 匹配
  • src/utils/date.ts✓ 匹配
  • src/types.d.ts✓ 匹配
  • README.md· 不匹配
  • dist/app.js· 不匹配
  • test/index.test.ts· 不匹配

这个工具能做什么

免费的 glob 通配符测试器,用于 .gitignore 规则、构建配置和文件匹配。 一边粘上一个 glob,比如 src/**/*.ts,另一边贴上一串路径,每一行会 立刻标出匹配还是不匹配。工具把你的 glob 编译成完全等价的正则并显示 出来,让你看清一条模式为什么命中或落空,而不是靠猜。它覆盖完整的 glob 语法:单星匹配一层路径里的任意内容、双星跨任意层级目录、问号 是一个字符、方括号是带区间的字符类、大括号是或选组、开头加叹号按 gitignore 风格取反整条模式。全部在浏览器里运行,不上传,一键复制 匹配到的路径,分享链接会原样还原你的模式和路径列表给同事。100% 浏览器本地。

工具细节

输入
文件 + 文本
页面会根据工具类型展示文本框、数值控件、文件选择或结构化输入。
输出
即时结果 + 复制
结果区优先给出可操作结果,支持项会显示复制、下载或可视化预览。
隐私
浏览器本地处理
主工具逻辑未发现外部 API 调用,输入通常留在当前标签页内处理。
保存 / 分享
可分享链接状态
关键设置会进入 URL,复制链接后别人能复现同一组参数。
性能预算
首屏 JS ≤ 9 KB
没有声明 WASM 依赖,适合快速打开和移动端使用。
适用场景
开发运维 · 程序员
分类和职业标签用于推荐相关工具、组织内链,并帮助用户快速判断是否适合当前任务。

怎么用

  1. 1. 输入

    把内容粘贴或拖入工具面板。

  2. 2. 处理

    点击按钮,在浏览器内本地处理,文件不上传。

  3. 3. 复制 / 下载

    一键复制结果或下载到本地。

Glob 通配符匹配测试器 适合怎么用

适合在上传、交付、归档、客服排查前使用,也适合任何文件离开本机前的本地复核。

适合文件任务

  • 分享前检查文件类型、大小、元数据和明显不匹配信号。
  • 上传、归档、接收或审核前整理混合文件夹。
  • 敏感文件先留在浏览器里处理,不用交给账号型服务。

文件检查项

  • 不要只凭扩展名判断真实文件类型。
  • 文件发给客户、供应商或公开页面前,先看元数据。
  • 复制、转换或导出结果确认前,保留原文件。

下一步可以接着做

这些入口会把当前任务接到更完整的工具链里。

  1. 1 正则测试 实时测 JavaScript 正则 —— 匹配高亮 / 捕获组 / 替换预览 / 标志可调 —— 浏览器本地 打开
  2. 2 .gitignore 生成器 勾选你的技术栈 —— Node、Python、Go、Docker、macOS、VS Code —— 生成去重、分节的 .gitignore。纯浏览器本地。 打开
  3. 3 JSON 格式化与校验 浏览器内即时格式化、校验、压缩 JSON,数据不离开本地。 打开

真实使用场景

  • 提交前先验一条 .gitignore 规则

    你给 .gitignore 加了 dist/**,但某个构建产物仍然出现在 git status 里。把 dist/** 当模式贴上,再贴上真实泄漏的路径(dist/app.js、 dist/chunks/vendor.js、build/dist/x.js),测试器立刻显示规则到底 抓到了哪些。你发现 build/dist/x.js 没被匹配,因为规则锚在了根, 改成 **/dist/** 并在提交前确认,而不是提交后才发现。

  • 为构建工具挑对 include 通配符

    Vite 或 ESLint 要一个 glob 决定处理哪些文件。你以为 src/*.ts 全包, 贴几条嵌套路径上去,发现 src/utils/date.ts 被跳过,因为单星只待 在一层目录里。换成 src/**/*.ts,看着每个嵌套文件都翻成匹配,再把 能用的模式直接复制进配置。

  • 教或学 glob 怎么对应到正则

    同事不明白为什么 **/*.ts 能匹配顶层文件。输入这个 glob,看测试器 在结果旁打印的等价正则。看到双星变成 (?:.*/)? 就一目了然:目录 前缀是可选的,所以 index.ts 在零层目录下也匹配。把链接分享出去, 这套解释会带着你的例子原样打开。

  • 过滤一个部署或 CI 路径列表

    某个 CI 任务只应在 packages 下的文件变更时运行。把路径过滤 glob 和一次拉取请求改动的文件列表贴上,看哪些文件触发了任务。你发现 一次纯文档改动也被匹配,因为 glob 写得太松,收紧它,别再为不需要 运行的构建浪费 CI 分钟。

常见踩坑

  • 以为单星能跨目录。单星只待在一层路径段里,所以 *.ts 只匹配当前目录里的文件,src/*.ts 会跳过 src/sub/x.ts。文件可能嵌套时,改用 src/**/*.ts 这样的双星。

  • 忘了 ** 需要独占一段。写成 src/**.ts 不会按你以为的方式跨目录;跨目录的写法是 src/**/*.ts,双星和文件模式之间隔着一个斜杠。测试器会立刻显示这个差别。

  • 把 glob 当正则用。glob 里的点就是字面的点、加号就是字面的加号,也没有 ^ 或 $ 这种锚定。所以 *.txt 表示字面的 .txt 扩展名,而不是任意字符再加 txt。等价正则面板把转义写明,省得你想多。

隐私说明

整个测试器都是浏览器标签页里运行的纯 JavaScript。你的 glob 模式、 路径列表和匹配结果都不离开页面,也不记录任何东西。唯一要注意:分享 链接会把模式和路径写进网址,所以把链接粘到聊天里,对方服务器的访问 日志会留下这些路径。路径涉及敏感信息时,请用复制按钮粘贴文本,而不是 分享网址。

常见问题

类似工具组合

做你这行的人, 还会一起用这些。

Made by Toolora · 100% client-side · Updated 2026-05-30