如何从QWebElement中提取纯文本(无标记)?

时间:2013-04-04 19:49:43

标签: qt qwebelement

我正在QTabWidget的新标签页中将URL加载到QWebFrame中。然后我将标签文本设置为HTML文档的标签文本。这在大多数情况下工作正常,但显然QWebElement :: toPlainText()返回原始标记文本。因此,如果其中包含HTML注释,我最终将Tab文本设置为“我的标题”。我希望它与其他标记一样,例如& lt:等等。

删除评论的最佳方法是什么?我无法弄清楚如何识别QWebElement的注释子元素。

我想因为元素应该只包含一个简单的字符串,所以我可以使用正则表达式从QWebElement :: toPlainText()返回的字符串中删除注释。

我应该将QWebElement标题文本加载到QDomDocument中并从中删除注释元素吗?即使这开始证明有点笨拙。


使用QDomDocument并没有那么糟糕:

QDomDocument titleDoc;
titleDoc.setContent(QString("<x>%1</x>").arg(webFrame->title()));
m_tabWidget->setTabText(index, titleDoc.documentElement().text());

它看起来像是一把大锤子。

0 个答案:

没有答案