Логически, это (но логика не имеет значения всякий раз, когда в кодировке символов или локалях). Согласно
perl -e 'print "\n" =~ /\v/ ? "y\n" : "n\n";'
печать "y", это так. Согласно
Pattern.compile("\\v").matcher("\n").matches();
возвращает false
в java, это не так. Это меня не смутило бы, если бы не это сообщение, утверждающее, что
Обновление Suns Класс шаблонов для JDK7 имеет новый новый флаг UNICODE_CHARACTER_CLASS, который заставляет все снова работать снова.
Но я использую java-версию "1.7.0_07", и флаг существует и, кажется, ничего не меняет. Более того, "\n" не новичок в Unicode, а простой старый символ ASCII, поэтому я действительно не вижу, как это может произойти. Вероятно, я делаю что-то глупое, но я не вижу этого.