Помогите считать с файла java 8 stream api

199
31 марта 2018, 16:37

Здравствуйте, подскажите как считать все слова из этого файла с стихотворением? То есть получить все слова без символов типа #t_es1385_1, цифровых символов, а также слова, содержащие в себе знаки препинания.

Пытался сделать так:

   Files.lines(Paths.get(ReadFile.class.getResource(path).toURI()), StandardCharsets.UTF_8)
                    .map(s -> s.split("([^а-я А-Я]|[\\d\\w\\s])+"))
                    .flatMap(Arrays::stream)
                    .filter(s -> !s.isEmpty())
                    .collect(Collectors.toList());

Не получилось. Ниже само стихотворение:

"Вот уж вечер. Роса…"
        Вот уж вечер. Роса: #t_es1385_1
        Блестит на крапиве.
        Я стою у дороги,
        Прислонившись к иве.
        От луны свет большой
        Прямо на нашу крышу.
        Где-то песнь соловья
        Вдалеке я слышу.
        Хорошо и тепло,
        Как зимой у печки.
        И березы стоят,
        Как большие свечки.
        И вдали за рекой,
        Видно, за опушкой,
        Сонный сторож стучит
        Мертвой колотушкой.
1910

"Там, где капустные грядки…"
        Там, где капустные грядки: #t_es1385_2
Answer 1
Files.lines(Paths.get("test.txt"), StandardCharsets.UTF_8)
     .map(s -> s.split(" "))
     .flatMap(Arrays::stream)
     .filter(s -> !s.isEmpty())
     .filter(s -> !s.startsWith("#"))
     .filter(s -> !s.matches("\\d+"))
     .map(s -> s.replaceAll("\\p{IsPunctuation}", ""))
     .collect(Collectors.toList());
READ ALSO
Межязыковое взаимодействие

Межязыковое взаимодействие

Имеется несколько программ, написанных на разных языках (питон, Ява, плюса)Требуется из одной программы (написанной на яве) последовательно...

205
Обработка ошибки 404 Spring

Обработка ошибки 404 Spring

Есть сервер, построенный на Spring + HibernateНебходимо отловить ошибку 404 когда пользователь стучиться на неправильный адрес (например localhost:8080/tes...

188
Как использовать переменную из метода в главном методе java?

Как использовать переменную из метода в главном методе java?

Доброго времени суток, друзьяЯ только начинаю знакомиться с Java

242
Включение микрофона во время разговора android studio java

Включение микрофона во время разговора android studio java

Делаю автоответчикИспользую всем известный способ ответа на звонок методом эмуляции нажатия на кнопку bl-гарнитуры

220