java中的PathMatcher

时间:2016-05-09 20:41:13

标签: java

我在下面的代码段中提出了一些问题

package com.concretepage.io.file;
import java.nio.file.FileSystem;
import java.nio.file.FileSystems;
import java.nio.file.Path;
import java.nio.file.PathMatcher;
import java.nio.file.Paths;
public class PathMatcherExample {
    public static void main(String[] args) {
        FileSystem fileSystem = FileSystems.getDefault();
        PathMatcher pathMatcher = fileSystem.getPathMatcher("glob:D:/**/*.java");
        Path path = Paths.get("D:/cp/PathMatcherExample.java");
        System.out.println(pathMatcher.matches(path));
    }
}

上面的/ ** / *是什么?我在做一些研究时已经阅读了以下内容: *它匹配零个,一个或多个字符。匹配时,它不会跨越目录边界。 **它与*相同但它跨越目录边界。

但仍然无法理解。

谢谢!

1 个答案:

答案 0 :(得分:0)

通常,星号(*)表示"任何元素" 在这种情况下,双星号表示"零,一个或多个目录"

https://en.wikipedia.org/wiki/Glob_%28programming%29