从 html 字符串中删除无效/错误放置的标签
Posted
技术标签:
【中文标题】从 html 字符串中删除无效/错误放置的标签【英文标题】:Remove invalid/incorrectly placed tags from html string 【发布时间】:2016-01-08 21:41:33 【问题描述】:我想知道是否有一种好的(或足够好的)方法可以从 C# 中的 html 字符串中删除无效或放置不正确的 HTML 标签?
示例 1:<div> </div> </div>
应更改为 <div> </div>
示例 2:<div> </section> </div>
应更改为 <div> </div>
基本上,转换后的 html 字符串应该是经过 W3C 验证的标记。我知道这可能有点困难,也许有一个图书馆可以很好地完成这项工作? 谢谢!
【问题讨论】:
【参考方案1】:我建议使用 HTMLTidy。
由于您使用的是 C#,因此有 tidy.net 项目。我认为您可以在 C# 代码中引用和使用一些 dll。
或者,您可以只使用 HTMLTidy 的命令行内容。
【讨论】:
感谢您的回复!我在这里找到了 Tidy 的 .NET 包装器:github.com/markbeaton/TidyManaged。该库的最新存储库可在此处找到:github.com/htacg/tidy-html5。我记得最终解决了生成无效 HTML 字符串的根本问题,而不是最终清理它:-)【参考方案2】:我最终修复了生成无效 HTML 字符串的根本问题。在这种情况下,解决主要问题(如果可能的话)比解决症状要好得多。
【讨论】:
以上是关于从 html 字符串中删除无效/错误放置的标签的主要内容,如果未能解决你的问题,请参考以下文章