五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

Glob Pattern:方便、快捷地查詢(xún)你項(xiàng)目中的所有文件

2023-08-02 20:12 作者:寫(xiě)代碼的寶哥  | 我要投稿

簡(jiǎn)介

Glob Pattern 是一套查詢(xún)系統(tǒng)中文件的語(yǔ)法,類(lèi)似于正則表達(dá)式,但又與正則表達(dá)式不同。Glob Pattern 最開(kāi)始起源于 Unix 系統(tǒng) Shell 命令行腳本。以 cp *.jpg ./thumbnails 舉例——這句指令表示復(fù)制當(dāng)前目錄內(nèi)所有以 .jpg 結(jié)尾的文件到 thumbnails/ 目錄中,語(yǔ)法很簡(jiǎn)潔。

由于 Glob Pattern 這套匹配文件的語(yǔ)法太好用了,因此各個(gè)編程語(yǔ)言都有自己的一套。在前端領(lǐng)域 Node.js 平臺(tái),比較有代表性實(shí)現(xiàn)包有:globfast-globglobby。不過(guò)從下載量上來(lái)看,glob 是最受歡迎的,如果你的項(xiàng)目需要用到查詢(xún)文件的需求,可以?xún)?yōu)先考慮使用 glob。

語(yǔ)法

Glob Pattern 相當(dāng)于正則表達(dá)式,語(yǔ)法沒(méi)那么復(fù)雜,因?yàn)?Glob Pattern 的目的很簡(jiǎn)單,就是為了匹配文件——沒(méi)有目錄什么事。下面我們就來(lái)學(xué)習(xí)下 Glob Pattern 的語(yǔ)法。

  • ?:匹配任意一個(gè)字符

  • *:匹配任意長(zhǎng)度的字符串

  • /:匹配一個(gè)路徑分隔符

  • **:這個(gè)就比較有意思了,Glob Pattern 中它有個(gè)專(zhuān)有名詞叫 globstar。一共有兩種使用方式:?jiǎn)为?dú)(即 **)使用時(shí)匹配任意層級(jí)下的所有文件;后面跟路徑分隔符(即 **/)時(shí),匹配任意層級(jí)的目錄。/myapp/**.js 是無(wú)效用法

  • {a,b}:是一個(gè)延展語(yǔ)法,Glob Pattern 中它有個(gè)專(zhuān)有名詞叫 brace expansion,會(huì)講當(dāng)前的 Glob Pattern 擴(kuò)展成多個(gè)單獨(dú)的形式。{} 內(nèi)有兩種分隔符號(hào)可以使用,分別是逗號(hào)(,)和兩點(diǎn)(..)。

  • 比如:**/*.{b,c} 會(huì)被擴(kuò)展為 **/.b**/.c,最終的結(jié)果也是這兩個(gè) Pattern

  • 比如:**/{a..c} 會(huì)被擴(kuò)展為 **/.a、**/.b**/.c

  • !(a|b):一個(gè)擴(kuò)展語(yǔ)法,表示排除(!)圓括號(hào)(())里可能的值

練習(xí)

以下截圖來(lái)自 globster.xyz(https://globster.xyz/)站點(diǎn),這是一個(gè)不錯(cuò)的學(xué)習(xí) Glob Pattern 語(yǔ)法的在線站點(diǎn)。感興趣的同學(xué)訪問(wèn)嘗試下。

我們以這樣一個(gè)項(xiàng)目結(jié)構(gòu)為例:


**/*.js

匹配項(xiàng)目中的任意 js 文件。

同理,匹配項(xiàng)目中的所有的 png 圖片就是 **/*.png。

/myapp/config/*

匹配 config/ 目錄下的所有文件。


**/*.{png,ico,md}

匹配所有的 png、ico 和 Markdown 文件。

/myapp/src/**/*.ts

匹配 src 目錄下所有的 ts 文件。

**/!(*.module).ts

匹配所有的 .ts 文件,但排除以 .module.ts 結(jié)尾的文件。

glob 的使用

下面我們簡(jiǎn)單了解下 glob 包的使用。

安裝依賴(lài):

引入 glob 查詢(xún)方法:

使用:

總結(jié)

以上就是關(guān)于 Glob Pattern 的所有內(nèi)容。如果你的工作中有涉及文件查找工作,建議嘗試下 glob 下看看,會(huì)讓你的查找更有效率,代碼也更加簡(jiǎn)潔。



Glob Pattern:方便、快捷地查詢(xún)你項(xiàng)目中的所有文件的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
项城市| 澜沧| 彭泽县| 南皮县| 夹江县| 屯留县| 龙口市| 新干县| 彩票| 神农架林区| 开化县| 新昌县| 墨江| 太仆寺旗| 监利县| 柳江县| 瓮安县| 宣城市| 湘乡市| 天长市| 文安县| 达孜县| 南澳县| 绵竹市| 黔西县| 兰州市| 乌拉特中旗| 绥宁县| 巩留县| 洪雅县| 尤溪县| 陇西县| 辛集市| 姚安县| 太湖县| 莱芜市| 广南县| 灯塔市| 荔浦县| 高陵县| 黑河市|