从带有富文本的 QLabel 获取纯文本
我有一个包含富文本的 QLabel
。
我只想从 QLabel
中提取实际(可见)“文本”,而不提取任何格式化代码。
我本质上需要一个类似于其他 Qt Widgets
的 '.toPlainText'
方法的函数。
我不能简单地调用 .text()
并按照此线程中的建议进行字符串操作 html 标签 从带有 HTML 标签的 QString 获取纯文本,因为返回的 QString
包含所有 废话。
如何提取纯文本?
(我对任何方法都持开放态度,即使是间接的。例如;将 html 转换为纯文本的现有函数)
谢谢!
规格:
蟒蛇2.7.2
PyQt4
视窗7
I have a QLabel
that contains rich text.
I want to extract just the actual (visible) 'text' from the QLabel
, and none of the code for formatting.
I essentially need a function similiar to the '.toPlainText'
method of other Qt Widgets
.
I can not simply call .text()
and string manipulate away the html tags as suggested in this thread Get plain text from QString with HTML tags, since the returned QString
contains all the <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
nonsense.
How do I extract the plain text?
(I'm open to any method, even if indirect. eg; Pre-existing functions that convert html to plain text)
Thanks!
Specs:
python 2.7.2
PyQt4
Windows 7
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
使用
QTextDocument
进行转换:Use a
QTextDocument
to do the conversion:这是一个混乱的解决方法(对于 python - PyQt),
灵感来自 http: //bytes.com/topic/net/answers/707370-convert-rtf-plain-text
Here's a messy work around (for python - PyQt)
Inspired by http://bytes.com/topic/net/answers/707370-convert-rtf-plain-text