LoginSignup
2
0

More than 3 years have passed since last update.

Java 完璧な空白行削除!

Last updated at Posted at 2019-09-17

いろんなサイトで空白行削除のやり方が記されていますが、完璧な方法をやっと見つけたので、備忘録的に書いておきます。
【 参考サイト 】
連続した空白行削除:http://routesfate.blog80.fc2.com/blog-entry-44.html
文字列抜き出し:https://uxmilk.jp/47897

【 元データ 】(改行しているところに「\n」を記述しています。

あいう\n
\n
かきく\n
ABC\n
\n
\n
123\n
\n
\n

すべての空白行を削除 & 最後の改行も削除する

DeleteBlankLine.java
//処理する文字列
String after="あいう\n\nかきく\nABC\n\n\n123\n\n\n";
// 2つ以上連続した改行コードを1つにまとめる
after = after.replaceAll("(\n|\r|\n\r|\r\n){2,}", "\n");
// 空白行をマッチさせて削除する
after = after.replaceAll("[ \t\\x0B\f]+(\n|\r|\n\r|\r\n)", "");
//最後の改行を削除する
if(after.substring(after.length() - 1).equals("\n")){
    after=after.substring(0,after.length()-1);
}

【 結果 】綺麗に整います。

あいう\n
かきく\n
ABC\n
123

「123」の後の「\n」も削除されます。
最後の「\n」を削除しない場合は、上記コード中の下記コードを記述しないでください。

//最後の改行を削除する
if(after.substring(after.length() - 1).equals("\n")){
after=after.substring(0,after.length()-1);
}

2
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0