【发布时间】:2021-11-01 00:09:24
【问题描述】:
我的目录结构如下:
/test_directory/data/date=2021-01-01/
/test_directory/data/date=2021-01-02/
/test_directory/data/date=2021-01-03/
/test_directory/data/sample=2021-01-04/
/test_directory/data/sample=2021-01-05/
我只想过滤日期文件夹。
/test_directory/data/date=2021-01-01/
/test_directory/data/date=2021-01-02/
/test_directory/data/date=2021-01-03/
我厌倦了下面的代码:但无法将正则表达式保留在目录路径中。
String dir = "/test_directory/data/";
File[] directories = new File(dir).listFiles(File::isDirectory);
for(int i=0;i< directories.length;i++){
System.out.println(directories[i]);
}
【问题讨论】:
-
必须是正则表达式吗?否则你可以简单地做类似
directory.getName().startsWith("date")的事情。 -
但它返回的是布尔值。
-
我之前给出的例子并不是一个完整的解决方案,因为它只是一个评论,而不是一个答案。现在,回到我的问题:它必须是正则表达式吗?
-
只需要正则表达式即可。