现在的位置: 首页 > 综合 > 正文

去除网页复制来代码的行数标号的java代码

2018年03月29日 ⁄ 综合 ⁄ 共 1361字 ⁄ 字号 评论关闭
我们经常在网页上复制来下面这样的代码,前面总加着讨厌的行号

01. import java.util.Scanner;
02. public class Main {
03.


今天我查别人代码的时候 也遇到了这个问题  于是写了个小程序 自动完成,想偷懒的人可以直接粘贴过去,虽然原理很简单,正则表达式的使用;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class RuleOutNumbersInAcmCode {
   public static void main(String[] args) throws FileNotFoundException{
	   StringBuffer sb = new StringBuffer();
	   File file = new File("D:\\数据文件\\acm源码\\acm311java.java");
	   Scanner in = new Scanner(file);
	   String temp="";
	   Pattern pattern = Pattern.compile("\\d{2}\\.");
	   Matcher matcher=null;
	   while(in.hasNext()){
		   temp = in.nextLine();
		   matcher = pattern.matcher(temp);
		   while(matcher.find()){
			   matcher.appendReplacement(sb, "");
		   }
		   matcher.appendTail(sb);
		   sb.append("\n");
	   }
	   
	   System.out.println(sb.toString());
	   try {
		FileWriter fw = new FileWriter(file);
		fw.write(sb.toString());
		fw.flush();
		fw.close();
	} catch (IOException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
	   
   }
}

import java.util.Scanner;
public class Main {
static public int max(int a,int b){
return a>b?a:b;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
int d[]=new int [50005];
Scanner scanner = new Scanner(System.in);
int n=scanner.nextInt();
while(n-->0){

这样是不是清爽多了

如果你遇到的行号是对齐的,那么修改下面中的数字为你需要的数字

Pattern pattern = Pattern.compile("\\d{2}\\.");
//如果行号是不对齐的那么改成 "\\d{min,max}\\."   min max只数值的最小长度和最大长度

thks

【上篇】
【下篇】

抱歉!评论已关闭.