今天我查别人代码的时候 也遇到了这个问题 于是写了个小程序 自动完成,想偷懒的人可以直接粘贴过去,虽然原理很简单,正则表达式的使用;
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