gpt4 book ai didi

Java 7 路径匹配器 : Does ** match 0 directories?

转载 作者:太空宇宙 更新时间:2023-11-04 12:51:26 24 4
gpt4 key购买 nike

看看下面的例子:

public class Test {
public static void main(String[] pArgs) throws Exception {
final PathMatcher pm = FileSystems.getDefault().getPathMatcher("glob:**/*.java");
final Path p = Paths.get("Test.java");
System.out.println("Match = " + pm.matches(p));
}
}

我期望输出为“Match = true”,但实际上输出为“Match = false”

换句话说:模式 ** 是否匹配我期望的 0 个目录?或者它是否匹配一个或多个目录?

最佳答案

来自getPathMatcher文档:

The following rules are used to interpret glob patterns:

  • The ** characters matches zero or more characters crossing directory boundaries.

这意味着 **/*.java 将匹配,例如 /Test.javasome/directory/Test.java。但前导斜杠仍会出现在匹配的模式中,这意味着它不会匹配 Test.java

您不应将 ** 视为 0 个或多个目录,而应将其视为 0 个或多个跨越目录边界的字符。

关于Java 7 路径匹配器 : Does ** match 0 directories?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35792963/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com