分类

Glob转正则

将文件匹配模式 (Glob) 转换为正则表达式

将 Glob 模式(如 src/**/*.ts)转换为标准的正则表达式。这对于理解 Glob 模式和创建自定义文件匹配逻辑非常有用。

支持花括号扩展,如 {a,b,c}

支持 ** 递归目录匹配

不区分大小写匹配

One string per line. Results will show which strings match.

关键信息

分类
Development
输入类型
text, checkbox, textarea
输出类型
json
样本覆盖
4
支持 API
Yes

概览

Glob转正则工具是一款专为开发者设计的实用程序,能够将简洁的Glob文件匹配模式(如 `src/**/*.ts`)快速转换为标准的正则表达式,帮助您轻松实现复杂的文件过滤与匹配逻辑。

适用场景

  • 在构建工具或自动化脚本中需要将Glob模式转换为正则以进行更细粒度的路径匹配时。
  • 当您不确定复杂的Glob模式(如包含递归目录或花括号扩展)实际匹配哪些文件时。
  • 在跨平台开发中,需要将通用的文件匹配规则转化为在不同编程语言中通用的正则表达式时。

工作原理

  • 在“Glob 模式”输入框中填入您需要转换的模式字符串。
  • 根据需求勾选“扩展模式”、“Globstar 支持”或“忽略大小写”等配置选项。
  • 点击转换后,系统将生成对应的正则表达式,您还可以输入测试字符串来即时验证匹配结果。

使用场景

前端构建配置:将 `src/**/*.js` 转换为正则,用于 Webpack 或 Vite 的排除规则。
CI/CD 脚本编写:将匹配特定后缀文件的Glob模式转化为正则,以过滤部署任务中的目标文件。
日志分析工具:通过正则匹配特定目录下的日志文件,实现自动化归档与清理。

用户案例

1. 递归匹配 TypeScript 文件

前端开发工程师
背景原因
项目结构复杂,需要从所有子目录中筛选出所有的 .ts 文件进行代码检查。
解决问题
手动编写匹配所有子目录的正则容易出错。
如何使用
输入 `src/**/*.ts`,勾选“Globstar 支持”,点击转换。
示例配置
globPattern: "src/**/*.ts", globstar: true
效果
生成了能够递归匹配 src 目录下所有层级 .ts 文件的正则表达式。

2. 忽略大小写的配置文件匹配

后端开发工程师
背景原因
需要匹配配置文件,且文件名可能存在大小写混用的情况(如 config.json 或 CONFIG.JSON)。
解决问题
标准的匹配规则区分大小写,导致部分文件被遗漏。
如何使用
输入 `config.{json,yaml}`,勾选“扩展模式”和“忽略大小写”。
示例配置
globPattern: "config.{json,yaml}", extended: true, caseInsensitive: true
效果
生成了不区分大小写且支持多扩展名匹配的正则表达式。

用 Samples 测试

text, regex

相关专题

常见问题

什么是Glob模式?

Glob是一种用于匹配文件路径的简化语法,常用于命令行和配置文件中,例如使用 `*` 匹配任意字符,`**` 匹配多级目录。

为什么需要将Glob转换为正则?

正则表达式比Glob更强大且具有通用性,在某些编程语言或特定的API接口中,仅支持正则匹配,不支持Glob语法。

“Globstar 支持”选项有什么作用?

开启后,工具将支持 `**` 语法,这允许匹配任意深度的嵌套子目录,是处理复杂项目结构的关键。

转换后的正则可以在所有语言中使用吗?

本工具生成的正则遵循标准语法,适用于大多数主流编程语言,但请根据具体语言的正则引擎特性进行微调。

如何验证转换结果是否正确?

您可以在“测试字符串”区域输入多个文件名,工具会自动对比并高亮显示哪些字符串符合生成的正则表达式。

API 文档

请求端点

POST /zh/api/tools/glob-to-regex

请求参数

参数名 类型 必填 描述
globPattern text -
extended checkbox 支持花括号扩展,如 {a,b,c}
globstar checkbox 支持 ** 递归目录匹配
caseInsensitive checkbox 不区分大小写匹配
testString textarea One string per line. Results will show which strings match.

响应格式

{
  "key": {...},
  "metadata": {
    "key": "value"
  },
  "error": "Error message (optional)",
  "message": "Notification message (optional)"
}
JSON数据: JSON数据

AI MCP 文档

将此工具添加到您的 MCP 服务器配置中:

{
  "mcpServers": {
    "elysiatools-glob-to-regex": {
      "name": "glob-to-regex",
      "description": "将文件匹配模式 (Glob) 转换为正则表达式",
      "baseUrl": "https://elysiatools.com/mcp/sse?toolId=glob-to-regex",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

你可以串联多个工具,比如:`https://elysiatools.com/mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp`,最多20个。

如果遇见问题,请联系我们:[email protected]