HUGO
Menu
GitHub 87548 stars Mastodon

Glob 模式

Glob 模式的快速參考指南。

glob pattern(通配符模式)是用於匹配值集合的模式。它是一種簡化指定多個目標的速記法,使處理數據或配置組更容易�

下表詳細說明了支持的 Glob 模式語法及其匹配行為。每個示例都展示了一種特定的匹配類型、使用的模式以及針對測試字符串進行評估時的預期布爾結果。

匹配類型 Glob 模式 測試字符串 匹配?
簡單通配符 a/*.md a/page.md true
字面匹配 'a/*.md' a/*.md true
單層通配符 a/*/page.md a/b/page.md true
單層通配符 a/*/page.md a/b/c/page.md false
多層通配符 a/**/page.md a/b/c/page.md true
單字符 file.??? file.txt true
單字符 file.??? file.js false
分隔符排除 ?at f/at false
字符列表 f.[jt]xt f.txt true
否定列表 f.[!j]xt f.txt true
字符范圍 f.[a-c].txt f.b.txt true
字符范圍 f.[a-c].txt f.z.txt false
否定范圍 f.[!a-c].txt f.z.txt true
模式交替 *.{jpg,png} logo.png true
無匹配 *.{jpg,png} logo.webp false

匹配邏輯遵循以下規則:

  • 標准通配符(*)匹配除分隔符之外的任何字符。
  • 超級通配符(**)匹配包括分隔符在內的任何字符。
  • 單字符(?)精確匹配一個字符,不包括分隔符。
  • 否定(!)在方括號內使用時,匹配除列表或范圍中指定字符之外的任何字符。
  • 字符范圍([a-z])匹配指定范圍內的任何單個字符。

分隔符是斜槓(/),但在匹配語義版本字符串時除外,此時分隔符是點號(.)。


Last updated: January 1, 0001
Improve this page