先确定实际依赖
选择器提供 minimatch 10.2.6 和 picomatch 4.0.7。先查看项目的依赖及调用参数,再决定使用哪一个;同一段扩展语法在两种库中可能有不同含义。
- 前导 ! 和 # 交给所选库处理,不套用 Git 忽略规则。
路径与通配符
输入一个 Glob 模式和每行一条的候选路径,在下方选择库与匹配参数。
模式和路径仅在当前浏览器内处理,不读取或修改文件。
请输入一个模式和至少一条候选路径。
Windows 模式把模式和路径中的 \ 转为 /;需要用 \ 转义时请选择 POSIX。大小写由独立选项控制。
一次测试一个模式。跳过空路径行,保留空格和重复项;! 与 # 使用所选库的原生语义。
上限:模式 256、路径 200 条、每条 512、合计 131,072 个 UTF-16 代码单元;minimatch 展开 1,000 项;后台运行 2 秒。
结果已过期或正在计算。
构建任务多收了一批文件,或者监听器漏掉了子目录,问题未必出在星号数量上。Glob 模式测试让你保留同一组候选路径,只切换匹配库或一个参数,再观察哪些行改变了结果,方便定位配置与预期之间的差异。
把这个 Glob 通配符测试工作台当作配置实验台:同时放入应该命中和不该命中的路径。Glob 模式匹配没有适用于所有库的统一方言;先确认项目使用的是 minimatch 还是 picomatch,再核对点文件、大小写和目录层级。
Glob 模式测试保留每条路径的原始行号。把 src/*.ts 改成 src/**/*.ts 后,直属文件和嵌套文件的结果可以直接对照,不需要先改动项目配置,也不需要猜测漏匹配的文件处于哪一层目录。
示例把普通源文件和点开头的文件放在一起。开启包含隐藏文件后,普通文件保持原来的匹配状态,隐藏文件则可能新增命中;忽略大小写是另一项参数,不会跟随这个开关一起改变。
选择器提供 minimatch 10.2.6 和 picomatch 4.0.7。先查看项目的依赖及调用参数,再决定使用哪一个;同一段扩展语法在两种库中可能有不同含义。
POSIX 模式保留反斜杠转义。Windows 分隔符模式会先把模式与路径中的反斜杠转为 /,报告同时保存原始路径和实际测试值。
默认停顿 350 毫秒后自动测试。关闭自动开关后,使用按钮或 Ctrl/Cmd + Enter 执行;输入或选项一变,旧结果立即失效,复制和下载会暂时禁用。
Glob 模式测试调用所选依赖完成判断,报告记录库版本、模式、参数和逐行结果。别人拿到报告后能看清你当时测试的是哪种方言,以及哪些参数参与了匹配。
使用 ? 匹配单个字符,[abc] 表示字符集合,** 表示目录递归,{js,ts} 表示扩展名选择。@(foo|bar).js 等扩展模式同样由库处理,结果不经过另写一套规则的转换器。
默认 *.js 只针对完整候选路径。开启仅匹配文件名后,它也能选中 src/app.js;含 / 的模式仍按路径测试。这个开关适合排查相同扩展名过滤器在不同构建配置中的表现。
输出不会只留下命中的文件。每条候选路径都有原始行号与匹配状态,重复路径分别保留,JSON 报告也包含未命中项,方便回看哪些反例验证了过滤条件。
单星通常只在一个路径段内匹配。需要跨目录时,应把双星写成独立路径段,例如 src/**/*.ts;在文件名中简单多写一个星号,不能作为适用于所有库的递归写法。
支持,例如 *.{js,ts} 可选择两种扩展名。minimatch 还会展开 file{01..12}.js 一类数值范围;picomatch 对范围的处理不同,因此编号文件最好提供边界样例逐个验证。
默认区分。启用忽略大小写会设置 nocase,例如 **/*.ts 可以进一步命中 APP.TS。这个设置不会改变点文件选项,两种差异需要分别核对。
独立路径段 ** 可以代表零层目录,所以直属文件也会命中。若需要恰好一层中间目录,可测试 src/*/*.ts,并同时保留直属和嵌套文件作为正反样例。
两种引擎默认都关闭 dot。启用包含隐藏文件,或在模式相应位置明确写出点,才能覆盖相应路径。例如使用字面路径 src/.hidden.ts 不需要额外开启 dot。
有值得补充的路径案例?