У меня есть текстовый файл, содержащий URL-адреса и электронные письма. Мне нужно извлечь все из них из файла. Каждый URL и адрес электронной почты можно найти более одного раза, но результат не должен содержать дубликатов. Я могу извлечь все URL-адреса, используя следующий код:
Files.lines(filePath).
.map(urlPattern::matcher)
.filter(Matcher::find)
.map(Matcher::group)
.distinct();
Я могу извлечь все электронные письма, используя следующий код:
Files.lines(filePath).
.map(emailPattern::matcher)
.filter(Matcher::find)
.map(Matcher::group)
.distinct();
Можно ли удалить все URL-адреса и электронные письма, считывающие поток, возвращенный Files.lines(filePath)
, только один раз?
Что-то вроде разделения потоков строк на поток URL-адресов и поток писем.