讀古今文學網 > Java程序員修煉之道 > B.2 glob模式示例 >

B.2 glob模式示例

一些使用glob模式的基本例子有時被稱為globbing,如表B-2所示。

表B-2 glob模式示例

語法描述 *.java匹配所有以.java結尾的字符串,比如Listing_2_1.java ??匹配任意兩個字符,比如ab或x1 [0-9]匹配0到9之間的任意數字 {groovy, scala}.*匹配所有以groovy.或scala.開頭的字符串,比如scala.txt或groovy.pdf a-z, A-Z匹配一個大寫或小寫的英文字符 \\匹配\字符 /usr/home/**匹配所有以/usr/home/開頭的字符串,比如/usr/home/karianna或/usr/home/karianna/docs

要查看更多glob模式匹配的例子,請參見Oracle的在線Java教程及FileSystem類的Java文檔。

警告 Java 7規範定義了自己的glob語義(而不是採用已有的標準)。有些可能會變成給程序員挖的坑,特別是在Unix上。比如說,同樣是rm *,在Java 7中會移除以點(.)開頭的文件,而在Unix的rm/glob中則不會移除這樣的文件。1

1 在Unix的glob模式中,如果文件名以」.「開頭,則這個字符必須顯式匹配。因此rm *不會移除.profile,並且tar c *也不會歸檔所有文件,用tar c .會更好。——譯者注