Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
77 views
in Technique[技术] by (71.8m points)

java - Remove all empty lines

I thought that wasn't that hard to do, but I want to remove all empty lines (or lines just containing blanks and tabs in Java) with String.replaceAll.

My regex looks like this:

s = s.replaceAll ("^[ |]*
$", "");

But it doesn't work.

I looked around, but only found regexes for removing empty lines without blanks or tabs.

question from:https://stackoverflow.com/questions/4123385/remove-all-empty-lines

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Try this:

String text = "line 1

line 3


line 5";
String adjusted = text.replaceAll("(?m)^[ ]*
?
", "");
// ...

Note that the regex [ |] matches a space, a tab or a pipe char!

EDIT

B.t.w., the regex (?m)^s+$ would also do the trick.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...