当您正在开发基于 Web 的应用程序并希望允许来自用户的格式丰富的文本时,您必须选择如何允许该输入。已经创建了许多不同的标记语言,因为可以说清理 HTML 更加困难。
各种不同标记语言的优缺点是什么,例如:
或者换句话说,您在选择使用特定标记语言时会考虑哪些因素。
最佳答案
Markdown、BBCode、Textile、MediaWiki 标记基本上都是相同的通用概念,所以我真的只是将其归为两类:HTML 和纯文本标记。
与 HTML 的处理是内容已经是 Web 内容的“可呈现”形式。这很棒,节省了处理时间,而且它是一种易于解析的语言。几乎任何语言都有几十个库来处理 HTML 内容,将 HTML 转换为/从 HTML 转换为其他格式等。主要的缺点是,由于早期网络时代的松散标准,HTML 可能会非常多变,你可以在接受来自用户的 HTML 时,并不总是依赖于理智的输入。正如所指出的,整理或净化 HTML 通常非常困难,尤其是因为它无法像 XML 那样遵循正常的标记规则(即不正确的闭合标签很常见)。
由于以下原因经常使用此类别:
底线是用户输入的用途。如果您打算保留数据并且可能需要改组格式等,那么使用谨慎的抽象格式来存储信息是有意义的。如果您出于任何原因需要手动处理原始数据,那么如果该格式易于人类阅读,则可以加分。如果您只在网页中显示内容(或用于报告的 HTML 文档等),并且您不担心对其进行转换或对其进行 future 验证,那么将其存储在 HTML 中是一种合理的做法。
https://stackoverflow.com/questions/342961/