【发布时间】:2010-11-16 16:26:46
【问题描述】:
我正在寻找进行某种“智能”HTML 编码的最佳方式。 例如:
From: <a>Next >></a> to: <a>Next gt;gt;</a>
From: <p><a><b><< Prev</b></a><br/><a>Next >></a></p> to: <p><a><b><< Prev</b></a><br/><a>Next gt;gt;</a></p>
所以只有文本的非 XML/HTML 部分会被编码,就像调用了 HtmlEncode 一样。
有什么建议吗?
编辑:这应该尽可能轻量级。传入的文本将来自不了解 HTML 编码的用户。
【问题讨论】:
-
Smart 将是“编写 HTML”或“编写纯文本”——尝试启发式地确定字符串的哪些部分是 HTML,哪些是使用在 HTML 中具有特殊含义的字符的文本是 hard(可能不可能做到 100% 的可靠性)。
-
是的,我不是在寻找完美的解决方案。问题是用户可以选择插入一些带有 HTML 标签的文本。但它们用于插入不是 HTML 的内容,例如 >>。所以我必须尽量确保最终的内容是好的。很难向用户解释他们应该使用 >和 <而是。