java正则表达式查找文件

java正则表达式查找文件


首先:
驱使我去做这件事的原因,纯属是因为在大学收作业的时候总是会有一部分人不按时上交文件,反正我是没有耐心去寻,索性写段程序一劳永逸!!

需要:

  • 一份班级名单
  • 文件路径


	 String []model= {
				"罗伟洲","陈巧","吴红玉","杨芸逍","向纤慧","万君","黄金","孙小平","张露露","刘承鑫","刘帆","龙云锋",
				"黄婕","冯浪","李富林","杨艾","黄丹","杨璐华","谭钦","李帅杰","潘豪","刘森彪","陈翔宇","胡峰","吴刚",
				"叶智豪","李光健","李俊达","刘俊濠","陈康林","张林","彭渝惠","毛思雅","邹家江","穆小丽","文于键","蔡庆",
				"毛睿","孙彩云","宋书杰","谭垚","刘其亮","李经纬","蒋贵成","郑光怀","成斌","卢柯","徐江鸿"};
				//班级名单
		File file=new File("D:\\软件307大作业")
		//要扫描的文件夹路径;
		File name[]=file.listFiles();
		//将该目录下的所有子文件存到数组里
		List<String> list=new ArrayList<String>();
		for (int i = 0; i < name.length; i++) {
			File names=name[i];
			if (names.isDirectory()) {//判断是否为文件夹
				list.add( names.getName());
			}
		}
int size=list.size();
			String n[]=new String[size];
			for (int j = 0; j < list.size(); j++) {
				n[j]=(String)list.get(j);
			}
			//遍历文件名存到数组里
			for (int i = 0; i < n.length; i++) {
				for (int j = 0; j < model.length; j++) {
					
					if (Pattern.matches(".*"+model[j]+".*", n[i])) {
					//正则表达式:判断文件夹的名称是否包含名单上的姓名
						model[j]=" ";
						//交了文件的同学清除姓名,留下没有交的同学姓名
					}
				}
			}
			for (int i = 0; i < model.length; i++) {
				System.out.print(model[i]);
			}
			//打印文件夹里没有匹配的同学姓名

注意:
其中Pattern.matches(a,b)的用法:
就是判断a,b两个字符串是否相匹配,如果匹配,返回 true

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大大大灰狼_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值