由于我在这里找不到合适的解决方案,我想问一下这个问题:
有没有办法确定QString
是否由html组成,即是富文本格式(或至少包含html)?
table/view model中对QVariant
个数据编辑者的未知/ setData
来电可能就是这种情况。
答案 0 :(得分:1)
解决方案可以是QString
用于#include <QTextDocument>
QString ensurePlainText(const QString& text)
{
QString out;
if (Qt::mightBeRichText(text))
{
// is html -> convert to plain text
QTextDocument text;
text.setHtml(value.toString());
out = text.toPlainText();
}
else
{
out = text;
}
return out;
}
:
tidyjson
重要的是要注意所提出的方法Qt::mightBeRichText。它可能无法检测到html或错误地检测非HTML文本中的html。前者可能会返回字符串中的html标签。例如,后者将从文本中删除换行符。