Разбирать простой Html текст - PullRequest
0 голосов
/ 23 февраля 2020

У меня есть несколько простых html строк, содержащих только теги span и strong , и я хочу отобразить их в TextView. Поскольку TextView не знает о html классах, я хочу установить себе правильный стиль в зависимости от html атрибутов.

<span class="victoria line-text">Victoria line</span> to <strong>Highbury & Islington</strong>

Возможно ли это только с помощью Html. из Html метода и Spanned объекта, чтобы получить нижеприведенную информацию, или я должен создать свои собственные логи синтаксического анализа c?

object1
{
   public String text="Victoria line";
   public String tag="Span";
   public String[] classes = {"victoria" "line-text" }
}

object2
{
   public String text=" to ";
   public String tag=null;
   public String[] classes =null;
}
object3
{
   public String text="Highbury & Islington";
   public String tag="Strong";
   public String[] classes =null;
}

1 Ответ

0 голосов
/ 23 февраля 2020

Я не думаю, что вы можете сделать это, используя только Html .от Html. Конечно, вы можете реализовать свой собственный обработчик для тегов (это для нераспознанных тегов, но вы можете изменить известное имя тега, используя regexp и обрабатывать их самостоятельно), или написать свой собственный анализатор тегов, но классы тегов это другая история.

Я предлагаю использовать Jsoup , это html синтаксический анализ lib, затем выбирать элементы по классам и заменять класс и тег каким-либо пользовательским тегом. И передайте результат в Html .to Html () с помощью обработчика пользовательских тегов.

...