語言

FileSystem.GetPathMatcher(String) 方法

定義

回傳 a PathMatcher 透過詮釋特定模式,對物件表示Path執行匹配操作String。

[Android.Runtime.Register("getPathMatcher", "(Ljava/lang/String;)Ljava/nio/file/PathMatcher;", "GetGetPathMatcher_Ljava_lang_String_Handler", ApiSince=26)]
public abstract Java.Nio.FileNio.IPathMatcher? GetPathMatcher(string? syntaxAndPattern);
[<Android.Runtime.Register("getPathMatcher", "(Ljava/lang/String;)Ljava/nio/file/PathMatcher;", "GetGetPathMatcher_Ljava_lang_String_Handler", ApiSince=26)>]
abstract member GetPathMatcher : string -> Java.Nio.FileNio.IPathMatcher

參數

syntaxAndPattern
String

語法與模式

傳回

一種路徑匹配器,可用於將路徑與圖案匹配

屬性

備註

回傳 a PathMatcher 透過詮釋特定模式,對物件表示Path執行匹配操作String。

參數 syntaxAndPattern 識別語法與模式,形式為: <blockquote>

<i>syntax</i><b>:</b><i>pattern</i>

</blockquote> 在其中 ':' 代表自己。

一個 FileSystem 實作支援「glob」和「regex」語法,也可能支援其他語法。 語法成分的價值會不以格為依歸。

當語法為「glob」時,路徑 String 的表示會使用一種類似正規表達式但語法更簡單的有限模式語言來匹配。 例如:

<table class=“striped” style=“text-align:left;margin-left:2em“>caption style=”display:none“>模式 語言</caption><thead><tr<>th scope=”col“>範例 <th scope=”col“> 描述 </tr<>/thead<>tbody><tr<>scope =”row“>*.java</th<>td>匹配代表以 /td></tr><結尾<.java的檔案名稱路徑 tr><th scope=”row“/th>>*.*<<<TD>匹配包含 dot</td<>/tr<>的檔案名稱 tr><th scope=“row”*.{java,class>}/<th<>td>匹配以 /td/tr 結尾.class.java<為 /td></tr><tr scope<>=“row”foo.?<>/th><td>匹配以 foo. 和單字元副檔名< /td></tr<>tr th<>scope = “row”td>&#47;home&#47;*&#47;*<> 匹配 /&#47;home&#47;gus&#47;data<td/tr<>tr<>th scope=“row”&#47;home&#47;**><TD>匹配&#47;home&#47;gus與<&#47;home&#47;gus&#47;data /td></tr></tbody></table><>

以下規則用於解釋球狀圖案:

<烏爾><·李>

字*元能匹配零個或多個Character charactersPath#getName(int) name元件而不跨越目錄邊界。

</李>

<李>

字 ** 元匹配零個或多個 Character characters 跨越目錄邊界。

</李>

<李>

字元恰 ? 好匹配名稱元件中的一個字元。

</李>

<李>

反斜線字元(\)用於跳脫原本會被解讀為特殊字元的字元。 例如,表達 \\ 式會對應一個反斜線,而「\{」則會對應左大括號。

</李>

<李>

這些 [ ] 字元是一個 括號表達 式,用來匹配一組字元中名稱元件中的單一字元。 例如, [abc] 匹配 "a"、 "b"或 "c"。 連字-號()可用來指定範圍,表示 [a-z] 一個範圍, "a" 從 到 "z" (包含)。 這些形式可以混合,例如 [abce-g] 匹配 "a"、 "b"、 "c"、 "e"或 "f""g"。 若 後[面的字元為 a!,則用於否定,因此[!a-c]與除 、 "b"、 或 "c"以外的任何字元"a"相匹配。

括號內的表達式 與 *?\ 與字元相匹配。 -若()字元是括號內的第一個字元,則該字元與自己相符,若它是否定字元後!的第一個字元。

</李>

<李>

{} 字元是一組子模式,若該組中任何子模式匹配,則該組與之匹配。 ","字元用來區分子模式。 群組無法巢狀。

</李>

<李>

檔名中的首句點&#47;字元在匹配操作中被視為一般字元。 例如, "*" 球狀圖案與檔名 ".login"相符。 此 Files#isHidden 方法可用來測試檔案是否被視為隱藏。

</李>

<李>

其他所有角色則依實作方式相互匹配。 這包括代表任意 FileSystem#getSeparator name-separators的字元。

</李>

<李>

元件的匹配 Path#getRoot root 高度依賴實作,且未明確規定。

</李>

</ul>

當語法為「regex」時,模式成分即為類別定義 java.util.regex.Pattern 的正則表達式。

對於 glob 和正則表達式語法,匹配細節(例如是否區分大小寫)都依賴實作,因此未被指定。

Java 文件 java.nio.file.FileSystem.getPathMatcher(java.lang.String)。

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於