11

有什么方法可以将 HTML 转换为正确的纯文本?我尝试了从 raw 到 sanitize 的所有方法,甚至是带有 text_part 方法的 Mail gem,它应该可以做到这一点,但对我不起作用。

到目前为止,我最好的镜头是strip_tags(strip_links(resource.body))but<p><ul>没有正确转换。

这或多或少是我在 HTML 中所拥有的:

Hello

This is some text. Blah blah blah.

Address:
John Doe
10 ABC Street
Whatever City

New Features
- Feature A
- Feature B
- Feature C
Check this out: http://www.google.com

Best,
Admin

转换为类似的东西

Hello
This is some text. Blah blah blah.
Address: John Doe 10 ABC Street Whatever City

New Features Feature A Feature B Feature C
Check this out: http://www.google.com

Best, Admin

任何想法?

4

2 回答 2

20

Rails 4.2.1 有#strip_tags一个内置的方法,特别是用于去除 HTML 标签。

一些例子:

strip_tags("Strip <i>these</i> tags!")

=> 去掉这些标签!

strip_tags("<b>Bold</b> no more!  <a href='more.html'>See more here</a>...")

=> 不再大胆!在这里查看更多...

strip_tags("<div id='top-bar'>Welcome to my website!</div>")

=> 欢迎来到我的网站!

在API 文档中查看。

于 2015-06-13T10:47:28.707 回答
9

在这里找到解决方案:https ://github.com/alexdunae/premailer/blob/master/lib/premailer/html_to_plain_text.rb

奇迹般有效!

于 2013-09-18T08:45:53.257 回答