Как удалить HTML-элементы из строки

BO:

class Apple {

private String appleName;

private String appleBenefits;

}

Из jsp я использую плагин редактора jquery (cleditor.js), чтобы ввести значение поля "appleBenefits" from the jsp.

String appleBenefits = "<ul><li>&nbsp;&nbsp;&nbsp;&nbsp;An apple a day keeps the <hr><font color="ff0000">Doctor away</li></ui><br>"

Однако, когда мне нужно сохранить его значение в БД, мне нужно сохранить его как:

"An apple a day keeps the Doctor away"

Как я могу сделать это в Java?

1 ответ

Решение

Вы можете использовать jsoup для удаления html-элементов из строки, а также для безопасности xss

http://jsoup.org/cookbook/cleaning-html/whitelist-sanitizer

и просто удалить HTML, попробуйте это:

Jsoup.parse(html).text();

РЕДАКТИРОВАТЬ: спасибо user2640782

С этим кодом на выходе будет "яблоко в день держит доктора подальше". Чтобы избавиться от пустых мест в начале, вы можете позвонить так: Jsoup.parse(appleBenefits).text().replace(String.valueOf((char) 160), " ").trim();

Другие вопросы по тегам