1) почему мой код не проходит по пред последнему условию с подсказкой "Убдись, что программа записывает во второй файл содержимое первого файла, где удалены все знаки пунктцации, включая символы новой строки". Ведь на официальном сайт сказано что \w это диапазон [a-zA-Z_0-9]. 2) В правильном решении используется тот же алгоритм что и и у меня только при записи пишется outputFileWriter.write(s.replaceAll("\\p{P}", "")); Собственно что значит выражение \\p{P} ? Я ничего похожего про это в документации не нашёл.