首页 > 其他 > 详细

02-05正则表达式进阶_展开串

时间:2014-04-27 01:02:34      阅读:450      评论:0      收藏:0      [点我收藏+]

展开串

实际开发中,常常会出现用到一批文件,而这些文件的文件名有某种规律,我们在表述的时候,往往习惯简写,但这样程序又不好识别。

比如:

c:/abc/xyz/k[11..19].dat

实际表示的就是:

c:/abc/xyz/k11.dat

c:/abc/xyz/k12.dat

c:/abc/xyz/k13.dat

c:/abc/xyz/k14.dat

c:/abc/xyz/k15.dat

c:/abc/xyz/k16.dat

c:/abc/xyz/k17.dat

c:/abc/xyz/k18.dat

c:/abc/xyz/k19.dat

本题目要求是:给定一个含有简写的串,要求展开为所有文件名。

简写的格式为:[整数..整数]

/*

*/

import java.util.regex.*;

public class ZhanKai
{
	public static void main(String[] args)
	{
		String s = "c:/abc/[8]xyz/k[11..19].dat";
		
		Pattern pt = Pattern.compile("\\[([0-9]+)\\.\\.([0-9]+)\\]");
		Matcher mc = pt.matcher(s);
		if(mc.find()){
			int a = Integer.parseInt(mc.group(1));
			int b = Integer.parseInt(mc.group(2));
			
			String s1 = s.substring(0,mc.start()); //截取首段
			String s2 = s.substring(mc.end()); //截取尾段
			
			for(int i=a; i<=b; i++)
				System.out.println(s1 + i + s2);
		}
	}
}

02-05正则表达式进阶_展开串,布布扣,bubuko.com

02-05正则表达式进阶_展开串

原文:http://blog.csdn.net/u012897654/article/details/24551137

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!