/**
*
* @author hongrui xing
*/
public class LineNumberReader extends BufferedReader{
private int lineNumber = 0;
public LineNumberReader(Reader in) {
super(in);
}
public String readLine() throws IOException {
StringBuffer sb= new StringBuffer();
synchronized (lock) {
String l = super.readLine();
if (l != null) {
lineNumber++;
sb.append(String.valueOf(lineNumber));
sb.append(":");
sb.append(l);
}
return sb.toString();
}
}
}
在java视频的第七讲的第一个片断,也就是网站上提供的免费片断《正则表达式的应用》中,讲到了将一个保存有ip地址与地区对照关系的文本文件导入到数据库时,应该将其中的某些空格替换成逗号(,),即对于如下格式的文本文件内容:
起始IP 结束IP 地区
---------------------------------------------------------------
61.54.231.245 61.54.231.245 河南省安阳市 新世纪网吧
61.54.231.246 61.54.231.246 河南省安阳市 未知地区
61.54.231.9 61.54.231.247 河南省安阳市 红日网吧
61.54.231.248 61.54.231.248 河南省安阳市 安阳师范学院
61.54.231.249 61.54.231.249 河南省安阳市 黑蜘蛛网吧(师范学院附近)
应转换成下面的这种格式:
61.54.231.245,61.54.231.245,河南省安阳市 新世纪网吧
61.54.231.246,61.54.231.246,河南省安阳市 未知地区
61.54.231.247,61.54.231.247,河南省安阳市 红日网吧
61.54.231.248,61.54.231.248,河南省安阳市 安阳师范学院
61.54.231.249,61.54.231.249,河南省安阳市 黑蜘蛛网吧(师范学院附近)
代码
String a="61.54.231.245 61.54.231.245 河南省安阳市 新世纪网吧 ";
String regex = "(((2[0-4]\\d)|(25[0-5]))|(1\\d{2})|([1-9]\\d)|(\\d))[.](((2[0-4]\\d)|(25[0-5]))|(1\\d{2})|([1-9]\\d)|(\\d))[.](((2[0-4]\\d)|(25[0-5]))|(1\\d{2})|([1-9]\\d)|(\\d))[.](((2[0-4]\\d)|(25[0-5]))|(1\\d{2})|([1-9]\\d)|()";
a=a.replaceAll(regex,"$0,");
System.out.println(a);
=======================================
~~我是光荣的分隔线~~
=======================================