Java:文件夹中的通配符文件搜索

Java:文件夹中的通配符文件搜索,java,wildcard,Java,Wildcard,我有一个包含文件列表的文件夹。我想搜索文件 例1。TBC_DICV_11943_IGAXMLService_V1.0 搜索关键字为TBC*IGAXML*1*、*1.0、IGAXML服务等 执行DICV服务测试 搜索关键字为DICV、*测试 请帮我搜索一下好吗?你可以这样试试` List<String>arrlist=new ArrayList<String>(); arrlist.add("what ever u wants");// add more

我有一个包含文件列表的文件夹。我想搜索文件

例1。TBC_DICV_11943_IGAXMLService_V1.0

搜索关键字为TBC*IGAXML*1*、*1.0、IGAXML服务等

执行DICV服务测试

搜索关键字为DICV、*测试
请帮我搜索一下好吗?

你可以这样试试`

List<String>arrlist=new ArrayList<String>();
   arrlist.add("what ever u wants");// add more
        for(int i=0;i<arrlist.size();i++)
  {
  if(arrlist.get(i).equals(" TBC_DICV_11943_IGAXMLService__V1.0"));
   {
    System.out.println("match found do your stuff here");
    }
   }

下面是一个流和模式的方法:

        List<String> list = new ArrayList<>();
        list.add("foo");
        list.add("TBC_DICV_11943_IGAXMLService__V1.0");
        list.add("bar");
        Pattern pattern = Pattern.compile("TBC.*IGAXML.*1.*");
        list.stream().filter(value -> pattern.matcher(value).find()).forEach(System.out::println);
serachkeyword是TBC*IGAXML*1*、*1.0、IGAXML服务等

工作正常


谢谢你回答我的问题

那很好。你有什么问题吗?为什么不自己试试呢?为什么不能试试String.contains???@AjayKulkarni很高兴在这里见到你☺️ 我是否更正了该字符串。在本例中包含帮助???@Sibidharan:此处相同。。。希望你做得很好。让我们在FB中ping:如果您能够使用equals来执行此操作,那么这样做没有任何意义-使用ArrayList.contains更有效。我认为问题的关键是OP想要做一个通配符搜索。此外,请使用迭代器或增强的for循环。请删除此答案,此答案与我的问题无关。可能有或可能没有n个*此方法足够灵活,可以使用任何您想要的regexp,只需修改Pattern=Pattern.compile;
String serachkeyword;
FileFilter fileFilter = new WildcardFileFilter(serachkeyword);
File[] files = new File(path).listFiles(fileFilter);
List<File> list = new ArrayList<File>(Arrays.asList(files));