Java 如何使用正则表达式消除空新行?
如何使用正则表达式消除源代码中的空新行 我的基本语言是java 例如:Java 如何使用正则表达式消除空新行?,java,regex,Java,Regex,如何使用正则表达式消除源代码中的空新行 我的基本语言是java 例如: class ex{ String a="Hello World"; public static void main(String[] args){ System.out.println(a); } } 没有空新行的结果源代码: class ex{ String a="Hello World"; public static void main(Stri
class ex{
String a="Hello World";
public static void main(String[] args){
System.out.println(a);
}
}
没有空新行的结果源代码:
class ex{
String a="Hello World";
public static void main(String[] args){
System.out.println(a);
}
}
您可以使用以下方法进行操作:
//read line
if (line.matches("^\\s*$")) {
System.out.println("ignoring empty line");
}
或者,您可以使用eclipse/netbeans/Intellij等IDE,并配置自动缩进代码的方式。可以使用标准工具对文本文件(Java或其他)进行许多修改。编写消除空行的程序是浪费时间 如果您在Linux上,请通过grep运行您的文件:
grep -v '^\s*$' Input.java >Output.java
对于Windows,获取Google(“grep on Windows”)将找到的一个类似工作。使用cmd的命令是相同的,但Windows程序可能附带GUI,这可能会使它更简单。要删除空行,请使用:
String result = text.replaceAll("(?im)^\\s*\r?\n", "");
如果您想使用某个IDE来完成此任务,您可以将所有
\n\n
(或\r\n\r\n
)替换为\n
(或\r\n
)。但您不认为这可能会降低代码的可读性吗?有许多漂亮的打印源压头可以做到这一点。一个这样的例子是(或astyle
)。另外,您的代码是非法的,因为您不能从静态方法访问实例字段a
。@Jan Legner:我不使用IDE,我使用文本editor@Elliot对不起,先生,我给出了一个简单代码的例子。很抱歉,我没有被检查。通过使用IDE(IDE中的代码格式化程序),否则您必须手动执行一些操作,例如使用代码检查文件,将所有非空行写入另一个临时文件,然后将文件重命名回您拥有的文件。