Я пытаюсь проанализировать html теги здесь, используя jsoup. Я новичок в jsoup. По сути, мне нужно проанализировать теги, получить текст внутри этих тегов и применить стиль, указанный в атрибуте класса.
Я создаю SpannableStringBuilder, для которого я могу создавать подстроки, применять стили и добавлять их вместе с текстами. которые не имеют стилей.
String str = "There are <span class='newStyle'> two </span> workers from the <span class='oldStyle'>Front of House</span>";
SpannableStringBuilder text = new SpannableStringBuilder();
if (value.contains("</span>")) {
Document document = Jsoup.parse(value);
Elements elements = document.getElementsByTag("span");
if (elements != null) {
int i = 0;
int start = 0;
for (Element ele : elements) {
String styleName = type + "." + ele.attr("class");
text.append(ele.text());
int style = context.getResources().getIdentifier(styleName, "style", context.getPackageName());
text.setSpan(new TextAppearanceSpan(context, style), start, text.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
text.append(ele.nextSibling().toString());
start = text.length();
i++;
}
}
return text;
}
Я не уверен, как я могу разобрать строки, которые не находятся между любыми тегами, такими как "Есть" и "работник из".
Нужен вывод такой как:
- There are
- <span class='newStyle'> two </span>
- workers from the
- <span class='oldStyle'>Front of House</span>