Я не могу сопоставить строку, содержащую символы новой строки, когда новая строка получена с помощью %n
в Formatter
объекте или String.format()
. Пожалуйста, просмотрите следующую программу:
public class RegExTest {
public static void main(String[] args) {
String input1 = String.format("Hallo\nnext line");
String input2 = String.format("Hallo%nnext line");
String pattern = ".*[\n\r].*";
System.out.println(input1+": "+input1.matches(pattern));
System.out.println(input2+": "+input2.matches(pattern));
}
}
и его вывод:
Hallo
next line: true
Hallo
next line: false
Что здесь происходит? Почему вторая строка не соответствует?
Версия Java - 1.6.0_21.