繁体   English   中英

从带有 HTML 标签的 QString 获取纯文本

[英]Get plain text from QString with HTML tags

我有带有 html 标签的 QString。 为什么我可以从这个字符串中获取纯文本?

str.remove(QRegExp("<[^>]*>"));

您需要从字符串中去除 HTML 标签。 例如看这个帖子

这个问题现在有点QTextDocumentFragment ,但是对于任何检查的人来说,(已经成为?)可以使用QTextDocumentFragment以 Qt 方式将 HTML 转换为纯文本。

这种方法可能会根据您的目的提供一致性以及稳健性(当然取决于 Qt 人员的时间:) - 但他们的用户群很大,到目前为止它对我来说效果很好)。

我在 Python 中尝试了类似下面的内容,我认为 C++ 中的机制也应该大致相同。

from PySide2.QtGui import QTextDocumentFragment

plain = QTextDocumentFragment.fromHtml(
    "<body>someHtml<br/><b>it was so booold!</b></body>"
).toPlainText()

(此外, Qt 文档建议您可以在那里将QString传递给fromHtml 。)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM