我正在用 Rust 编写 HTML 到 Markdown 转换器,使用 Kuchiki 从 html5ever 访问解析树。
对于未知的 HTML 标记,我想提供忽略它们并将它们传递给输出字符串的可能性,但仍然照常处理它们的子级。为此,我需要没有内容的标签的文本表示,但我不知道如何最好地做到这一点。
我能想到的最好的是:
- 克隆节点
- 丢弃它的孩子
- 称呼
node.to_string
- 使用正则表达式“解析”字符串以分隔开始标签和结束标签。
我觉得一定有更好的方法。我不认为 Kuchiki 提供了开箱即用的功能,但我也不知道如何通过 Kuchiki 访问 html5ever API,而且我也没有从 html5ever API 文档中获得它们是否会提供一些功能像这样。