使用pyqt qtextedit时,如何从文本中删除任意大小的字符集?

时间:2018-07-26 11:36:21

标签: python pyqt qtextedit

我需要从QTextEdit块中删除任意大小的字符集,并在替换字符中没有空格的地方将其替换为零。

我知道使用cursor.insertText()cursor.deleteChar()的方式 但是我需要一种不依赖游标并且OS能够处理QTextEdit块中任意字符集的方式

1 个答案:

答案 0 :(得分:0)

您通过QTextEdit.toHtml()toPlainText()得到字符串。

因为您获得了一组纯字符串,所以您只需执行此操作即可。

plaintext = QTextEdit.toPlainText()
plaintext = plaintext.replace("the size of string","0"*len("the size of string")
QTextEdit.setPlainText(plaintext)

对于toHtml,您将在标签中获得部分文字,并用它替换您喜欢的字符串。

htmltext = QTextEdit.toHtml()
htmltext = htmltext.replace("<p>your favorite strings<\p>","<p"+"0"*len(your favorite strings)+"<\p>")
QTextEdit.setHtml(htmltext)

您可能必须预先通过lxml模块对html进行分析,依此类推。 出于您的目的,这是个好建议吗?