我在我的数据库中为我的问答网站保存了 markdown 文本和 html 版本的文本。
当用户浏览问题时,他们正在查看 markdown 片段。他们应该只查看纯文本,就像在 stackoverflow 上浏览问题时一样,没有显示 Markdown 文本或 html 文本。
有没有办法将 markdown 或 html 文本转换为纯文本?
最佳答案
StackOverflow 上的问题是以 HTML 而非纯文本格式查看的。使用 Jeff Atwood 的 HTML sanitizer 对其进行 sanitizer 然后使用 MarkDownSharp 转换为 HTML .
我asked this question几周前,我最终找到的解决方案是将原始 Markdown 存储在数据库中,然后在向访问者显示时对其进行转换。
这是我清理 Markdown 的方式
''# Because some people can be real ass holes and try to submit bad data (scripts and crap)
''# we have to modify the "About" content in order to sanitize it. At the same time, we
''# transform the Markdown into valid HTML
user.About = Trim(Utilities.HtmlSanitizer.Sanitize(MarkDownSharp.Transform(user.About)))
由于 MarkdownSharp 是开源的,我相信您可以深入研究源代码并删除您不想在预览中看到的其他标签。
编辑:
由于在我的示例中我在转换 Markdown 之前清理 HTML,我认为您必须删除 <b>
或 <strong>
HtmlSanitizer 和 MarkdownSharp 中的标签。这样做的原因是您需要清理原始 html 标签和 markdown 标签。
关于c# - 如何将 Markdown (WMD)文本转换为纯文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3191732/