0

我刚刚删除了我的问题,因为我认为它与以下内容重复: 剥离标签和介于两者之间的所有内容‌​ 但是:提供的选项仅用于“隐藏”标签。检查源代码时,标签都还在。

当我查看我的代码源时,我的备忘录在 .

<td>Memo:</td><td><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
    <head>
        <meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8" /><title>
        </title>
        <style type="text/css">
            .cs95E872D0{text-align:left;text-indent:0pt;margin:0pt 0pt 0pt 0pt}
            .csEE99116A{color:#08343E;background-color:transparent;font-family:Arial; font-size:12pt; font-weight:normal; font-style:normal; }
        </style>
    </head>
    <body>
        <span><p class="cs95E872D0"><span class="csEE99116A">dubbel test hoi</span></p></span></body>
</html>
</td>

现在,我唯一想看到的是dubbel test hoi<span><p class="cs95E872D0"><span class="csEE99116A">dubbel test hoi</span>确实看到的东西,但在源代码中它仍然看起来很糟糕。

我尝试了各种功能,其中大多数都剥离了一些东西但留下了 CSS IDS,有些只是“隐藏”它,所以它仍然在源代码中可用。

有什么建议么?

我的输入文本是来自 PHP 表单的纯文本,然后它进入数据库并发送到 C# 应用程序,该应用程序将文本转换为 RTF。在我的“仪表板”的这个页面中,我请求了现在在 RTF 中的文本,并将 RTF 转换为 HTML 文本。

这是我将文本转换为 HTML 文本的代码:

private string ConvertToHtml(string value)
        {
            if (RtfTags.IsRtfContent(value))
            {
                using (RichEditDocumentServer richServer = new RichEditDocumentServer())
                {
                    string htmlText = string.Empty;
                    richServer.RtfText = value;
                    CharacterProperties cp = richServer.Document.BeginUpdateCharacters(richServer.Document.Range);
                    cp.FontName = "Arial";
                    cp.FontSize = 12;
                    cp.ForeColor = System.Drawing.ColorTranslator.FromHtml("#08343e");
                    richServer.Document.EndUpdateCharacters(cp);
                    htmlText = richServer.HtmlText;
                    return htmlText;
                }
            }
            else
            {
                return value;
            }
        } 
4

1 回答 1

3

我在这里http://www.php.net/manual/en/function.strip-tags.php#17656找到了 一个解决方案。只需替换样式代码,然后使用 strip_tags:

$htmlstring = preg_replace("'<style[^>]*>.*</style>'siU",'',$htmlstring);
echo strip_tags($htmlstring);
于 2013-09-16T10:12:42.743 回答