Используйте JSoup , это хорошо документировано, доступно на Maven и после дня, проведенного с несколькими библиотеками, для меня это лучшее, что я могу себе представить ... Мое собственное мнение, что такая работа, как разбор html в обычный текст, должна быть возможна в одной строке кода -> иначе библиотека как-то не справится ... просто говоря ^^ Так что вот, однострочная строка JSoup - в Markdown4J, что-то как это невозможно, и в Markdownj, в htmlCleaner это боль в заднице с примерно 50 строками кода ...
String plain = new HtmlToPlainText().getPlainText(Jsoup.parse(html));
И то, что вы получили, это настоящий простой текст (не просто html-исходный код в виде String, как в других библиотеках LOL) -> он действительно отлично справляется с этим. Это более или менее такое же качество, как Markdownify для PHP ....