複数行を読み込む時に空行を無視する
プログラミング問題で出てきて躓いたのでメモ。
String word = "123 string\n \nstring2\nstr\n-----end-----"; word = word.replaceAll("(?m)^\\s*$[\n\r]{1,}", ""); Scanner sc = new Scanner(word); while (sc.hasNextLine()){ String str = sc.nextLine(); System.out.println(str); }
/^\s*$[\n\r]{1,}/gm
が必要な正規表現。