wildcard(Wildcard) -> [file:filename()]
Wildcard = filename() | dirname()
返回與 Unix-style 通配符字符串 Wildcard
匹配的所有文件的列表。
通配符字符串看起來像普通的文件名,隻是以下"wildcard characters"以特殊方式解釋:
- ?
-
匹配一個字符。
- *
-
匹配任意數量的字符,直到文件名末尾、下一個點或下一個斜杠。
- **
-
用作單個模式的兩個相鄰
*
匹配所有文件以及零個或多個目錄和子目錄。 - [Character1,Character2,...]
-
匹配列出的任何字符。由連字符分隔的兩個字符匹配一係列字符。示例:
[A-Z]
匹配任何大寫字母。 - {Item,...}
-
交替。匹配備選方案之一。
其他角色代表他們自己。隻有在相同位置具有完全相同字符的文件名才會匹配。匹配區分大小寫,例如"a" 與"A" 不匹配。
目錄分隔符必須始終寫為 /
,即使在 Windows 上也是如此。
\
前麵的字符失去其特殊含義。請注意,在字符串文字中,\
必須寫為\\
。例如, "\\?*" 將匹配以 ?
開頭的任何文件名。
請注意,允許使用多個 "*" 字符(如 Unix 通配符,但與 Windows/DOS 通配符相反)。
例子:
以下示例假設當前目錄是 Erlang/OTP 安裝的頂部。
要查找所有應用程序中的所有 .beam
文件,請使用以下行:
filelib:wildcard("lib/*/ebin/*.beam").
要在所有應用程序 src
目錄中查找 .erl
或 .hrl
,請使用以下任一行:
filelib:wildcard("lib/*/src/*.?rl")
filelib:wildcard("lib/*/src/*.{erl,hrl}")
要查找 src
或 include
目錄中的所有 .hrl
文件:
filelib:wildcard("lib/*/{src,include}/*.hrl").
要查找 src
或 include
目錄中的所有 .erl
或 .hrl
文件:
filelib:wildcard("lib/*/{src,include}/*.{erl,hrl}")
要查找任何子目錄中的所有 .erl
或 .hrl
文件:
filelib:wildcard("lib/**/*.{erl,hrl}")
相關用法
- erlang with(Ks, Map1)用法及代碼示例
- erlang without(Ks, Map1)用法及代碼示例
- erlang write用法及代碼示例
- erlang whereis用法及代碼示例
- erlang whereis(RegName)用法及代碼示例
- erlang write_file_info(Filename, FileInfo)用法及代碼示例
- erlang warning_map()用法及代碼示例
- erlang write(Term)用法及代碼示例
- erlang words(String)用法及代碼示例
- erlang weak_relation(BinRel1)用法及代碼示例
- erlang sin用法及代碼示例
- erlang cos用法及代碼示例
- erlang tan用法及代碼示例
- erlang asin用法及代碼示例
- erlang acos用法及代碼示例
- erlang atan用法及代碼示例
- erlang exp用法及代碼示例
- erlang log用法及代碼示例
- erlang abs用法及代碼示例
- erlang float用法及代碼示例
- erlang Is_float用法及代碼示例
- erlang Is_Integer用法及代碼示例
- erlang len用法及代碼示例
- erlang equal用法及代碼示例
- erlang concat用法及代碼示例
注:本文由純淨天空篩選整理自erlang.org大神的英文原創作品 wildcard(Wildcard) -> [file:filename()]。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。