Glob 模式參考
Visual Studio Code 在許多元件中使用了 glob 模式。示例包括在諸如搜尋等功能中設定檔案和資料夾的包含/排除項,從檔案資源管理器中隱藏檔案或將其標記為只讀,以及設定特定於程式語言的檔案關聯。
Glob 模式語法
VS Code 支援以下 glob 語法
/用於分隔路徑段*匹配路徑段中的零個或多個字元?匹配路徑段中的一個字元**匹配任意數量的路徑段,包括零個{}用於分組條件(例如{**/*.html,**/*.txt}匹配所有 HTML 和文字檔案)[]用於宣告要匹配的字元範圍(example.[0-9]匹配example.0、example.1等)[!...]用於否定要匹配的字元範圍(example.[!0-9]匹配example.a、example.b,但不匹配example.0)
注意:路徑分隔符是 / 而不是 \,即使在 Windows 上也是如此。但在應用時,glob 模式將匹配同時包含斜槓和反斜槓的路徑。
特殊情況
搜尋檢視中的 glob 模式與設定(如 files.exclude 和 search.exclude)中的工作方式不同。在設定中,您必須使用 **/example 來匹配工作區中位於子資料夾 folder1/example 下名為 example 的資料夾。在搜尋檢視中,預設假定存在 ** 字首。這些設定中的 glob 模式始終相對於工作區資料夾的路徑進行評估。
常見問題
為什麼 glob 模式不支援功能 X 或 Y?
我們實現了自己的 glob 匹配庫,目標是為大多數典型模式提供最佳效能。如果您期望支援某種特定的 glob 語法,可以使用您的用例報告問題。
為什麼我的 glob 模式不起作用?
請確保在 Windows 上使用 / 來分隔路徑而不是 \。VS Code 中的 glob 模式要求使用 / 來分隔路徑,但它們會同時匹配路徑中的 / 和 \。
如果您想字面上匹配特殊字元(如 [ 或 ]),請將其放在方括號內(單字元範圍)進行轉義,以避免在模式匹配中被解釋。反斜槓無法轉義它們。例如,要匹配 src/routes/post/[id]/ 下的檔案,您將使用模式 src/routes/post/[[]id[]]/**。