代码之家  ›  专栏  ›  技术社区  ›  DarenW

如何从Qt4小部件的文本属性中剥离HTML?

  •  2
  • DarenW  · 技术社区  · 14 年前

    就编码工作而言,更改Qt4小部件的文本属性最简单的方法是什么。QLabel.text文件,所以所有的HTML标签都被删除了?

    HTML很简单,通常只有一到三个标签,比如or和它们的结束伙伴。

    4 回复  |  直到 14 年前
        1
  •  2
  •   photo_tom    14 年前

    我以前也用过这个,尽管这个小部件看起来有点过分了。 QtextEdit ,富格文本编辑块。使这项工作的原因是构造函数假定字符串具有标记。

    QTextEdit htmlText(HtmlText);  // HtmlText is any QString with html tags.
    QString plainText = htmlTextEdit.toPlainText();
    
        2
  •  5
  •   Daniele E. Domenichelli    12 年前

    如果您不想为此使用小部件,可以使用 QTextDocument::toPlainText()

    QTextDocument doc;
    doc->setHtml(htmlText);
    doc->toPlainText();
    
        3
  •  0
  •   Community CDub    7 年前

    听起来你真的只是在寻找一种从一个字符串中去掉HTML标记的方法,这个字符串不是Qt小部件特有的(除非你想要一个可以利用Qt库其余部分的解决方案)。不管怎样,在搜索“strip html from string”时,似乎并不缺少点击率。通常有两种方法:

    此堆栈溢出 question 关于regex选项有很多讨论(尽管问题是去掉所有标签) 除了

    this question 给出了使用该库解析器的示例。

        4
  •  0
  •   teukkam    14 年前