我在我的数据库中为我的Q &网站保存了降价文本和html版本的文本。如何将降价(WMD)文本转换为纯文本
当用户浏览问题时,他们正在查看降价片段。他们应该只能查看纯文本,就像在浏览器上显示标题文本或html文本时的问题一样。
有没有办法将markdown或html文本转换为纯文本?
我在我的数据库中为我的Q &网站保存了降价文本和html版本的文本。如何将降价(WMD)文本转换为纯文本
当用户浏览问题时,他们正在查看降价片段。他们应该只能查看纯文本,就像在浏览器上显示标题文本或html文本时的问题一样。
有没有办法将markdown或html文本转换为纯文本?
有关StackOverflow的疑问正在HTML中查看,而不是纯文本。他们使用Jeff Atwood的HTML sanitizer进行消毒,然后使用MarkDownSharp转换为HTML。
我asked this question几个星期前,我最终的解决方案是将原始降价存储在数据库中,然后将其显示给访问者时进行转换。
这里是我如何消毒我降价
''# 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是开源的,我敢肯定,你可以深入到源代码,并删除你不希望看到在附加标签预览。
因为在我的例子中,我将降价前消毒的HTML,我想你将不得不删除这两个HtmlSanitizer和MarkdownSharp的<b>
或<strong>
标签。原因是你需要清理原始的html标签和markdown标签。
在这个问题中,我把“你好”字加粗了......如果你可以回去浏览这个问题“Hello”不会是粗体的,这就是我需要的 – Luke101 2010-07-07 03:44:09
你可以通过在标记中“消毒”和'标签 – 2010-07-07 03:45:31
我可以问你为什么要使用Markdown只显示纯文本?为什么不直接使用TextArea? – 2010-07-07 03:45:58
另一个解决方案是使用降价XSLT文件。
这似乎从我的研究,你只需要存储的降价在数据库中,然后你清理所有输出。这也将减少您的存储需求。 – 2010-07-07 03:47:47
只是出于好奇 - 如果您不打算向最终用户显示HTML,为什么要从降价产生它,为什么要存储它? – 2010-07-07 03:48:15
@Franci,在我的回答中看到我的评论。我“认为”他指的是在预览中没有HTML(注意他如何提到“浏览这个问题” – 2010-07-07 03:51:13