Вебинары Разобраться в IT Реферальная программа
Программирование Аналитика Дизайн Маркетинг Управление проектами
10 Июл 2023
2 мин
297

Удаление HTML тегов из строки в Java

Одной из распространенных задач при работе с текстовыми данными в Java является удаление HTML-тегов из строк. Это может быть необходимо, например, при


Одной из распространенных задач при работе с текстовыми данными в Java является удаление HTML-тегов из строк. Это может быть необходимо, например, при парсинге веб-страниц или обработке пользовательского ввода.

Пример строки с HTML-тегами:

<p>Привет, мир! <b>Это тестовое сообщение</b></p>

Можно попробовать использовать простое регулярное выражение для удаления HTML-тегов, например, replaceAll("<.*?>", ""). Однако это решение не совсем корректно, так как оно не учитывает HTML-сущности (например, &amp;) и может удалить непредназначенный текст, если он находится между угловыми скобками.

Более надежным способом является использование встроенных библиотек Java для работы с HTML. Одной из таких библиотек является Jsoup.

Пример кода для удаления HTML-тегов с помощью Jsoup:

import org.jsoup.Jsoup;
import org.jsoup.safety.Whitelist;

String dirtyHTML = "&lt;p&gt;Привет, мир! &lt;b&gt;Это тестовое сообщение&lt;/b&gt;&lt;/p&gt;";
String cleanText = Jsoup.clean(dirtyHTML, Whitelist.none());

В этом примере сначала загружается HTML-код, а затем используется метод clean, который удаляет все HTML-теги из строки. Второй аргумент Whitelist.none() гарантирует, что будут удалены все теги, не входящие в белый список (в данном случае список пуст).

Таким образом, для корректного удаления HTML-тегов из строки в Java рекомендуется использовать специализированные библиотеки, такие как Jsoup, которые обеспечивают корректную обработку HTML-кода.

Добавить комментарий