我正在寻找一种方法将HTML格式的文本转换为纯文本,同时保持其基本结构,也许稍微调整一下,所以:
<p>This is a paragraph.</p>
<ol>
<li>List item 1.</li>
<li>List item 2.</li>
</ol>
<p>This is an <a href="www.google.com">anchor</a>.</p>
变为:
这是一个段落。
- 列出项目1。
- 列出项目2.
这是一个主播(www.google.com)。
关于如何有效实现大量HTML格式模板的任何想法?
答案 0 :(得分:3)
使用基于文本的浏览器,例如lynx,并将其输出到stdout。我不确定它是否适合你所有的调整需求,但这是一个非常快速和简单的开始
lynx -crawl -dump http://stackoverflow.com/questions/13279364/convert-html-to-plain-text-and-keep-basic-formatting
(实际上,我希望你的名单是
1. List item 1.
2. List item 2.
因为它是一个有序列表)
编辑:实际上更多地考虑了您的实际用例,它完美运行:
> echo '<p>This is a paragraph.</p>
<ol>
<li>List item 1.</li>
<li>List item 2.</li>
</ol>
<p>This is an <a href="http://www.google.com">anchor</a>.</p>' | lynx -stdin -dump
变为
This is a paragraph.
1. List item 1.
2. List item 2.
This is an [1]anchor.
References
1. http://www.google.com/