Как удалить HTML-элементы из строки
BO:
class Apple {
private String appleName;
private String appleBenefits;
}
Из jsp я использую плагин редактора jquery (cleditor.js), чтобы ввести значение поля "appleBenefits" from the jsp.
String appleBenefits = "<ul><li> 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();