Существует ли простой способ разделить HTML от QString в QT?

У меня есть QString с некоторым HTML в нем... там простой способ разделить HTML от него? Я в основном хочу просто фактическое текстовое содержание.

<i>Test:</i><img src="blah.png" /><br> A test case

Стал бы:

Test: A test case

Мне любопытно знать, имеет ли QT строковую функцию или утилиту для этого.

27
задан Nathan Osman 9 May 2010 в 23:56
поделиться

1 ответ

Вы можете попробовать просмотреть строку с помощью класса QXmlStreamReader и извлечь весь текст (если HTML-строка гарантированно является хорошо сформированным XML).

Что-то вроде этого:

QXmlStreamReader xml(htmlString);
QString textString;
while (!xml.atEnd()) {
    if ( xml.readNext() == QXmlStreamReader::Characters ) {
        textString += xml.text();
    }
}

но я не уверен, что это 100% правильное использование API QXmlStreamReader, так как я использовал его довольно давно и мог что-то забыть.

13
ответ дан 28 November 2019 в 04:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: