ruby – 如何从字符串中删除HTML编码字符?

前端之家收集整理的这篇文章主要介绍了ruby – 如何从字符串中删除HTML编码字符?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个包含一些 HTML编码字符的字符串,我想删除它们:
"<div>Hi All,</div><div class=\"paragraph_break\">< /></div><div>Starting today we are initiating PoLS.</div><div class=\"paragraph_break\"><br /></div><div>Please use the following communication protocols:<br /></div><div>1. Task Breakup and allocation - Gravity<br /></div><div>2. All mail communications - BC messages<br /></div><div>3. Reports on PoC / Spikes: Writeboard<br /></div><div>4. Non story related tasks: BC To-Do<br /></div><div>5. All UI and HTML will communicated to you through BC.<br /></div><div>6. For File sharing,we'll be using DropBox.<br /></div><div>7. Use Skype for lighter and generic desicussions. However,in case you need any approvals,data for later reference,etc,then please use BC. PoLS conversation has been created on skype.</div><div class=\"paragraph_break\"><br /></div><div>You'll have been given necessary accesses to all these portals. Please start using them judicIoUsly.</div><div class=\"paragraph_break\"><br /></div><div>All the best!</div><div class=\"paragraph_break\"><br /></div><div>Thanks,<br /></div><div>Saurav<br /></div>"

解决方法

你想做的事情是多方面的.也许看看你为什么要这样做会有所帮助.通常当我想删除编码的HTML时,我想恢复HTML的内容. Ruby有一些模块可以让它变得简单.
require 'cgi'
require 'nokogiri'

html = "<div>Hi All,<br /></div><div>Saurav<br /></div>"

puts CGI.unescapeHTML(html)

哪个输出

<div>Hi All,</div><div class="paragraph_break">< /></div><div>Starting today we are initiating PoLS.</div><div class="paragraph_break"><br /></div><div>Please use the following communication protocols:<br /></div><div>1. Task Breakup and allocation - Gravity<br /></div><div>2. All mail communications - BC messages<br /></div><div>3. Reports on PoC / Spikes: Writeboard<br /></div><div>4. Non story related tasks: BC To-Do<br /></div><div>5. All UI and HTML will communicated to you through BC.<br /></div><div>6. For File sharing,we'll be using DropBox.<br /></div><div>7. Use Skype for lighter and generic desicussions. However,then please use BC. PoLS conversation has been created on skype.</div><div class="paragraph_break"><br /></div><div>You'll have been given necessary accesses to all these portals. Please start using them judicIoUsly.</div><div class="paragraph_break"><br /></div><div>All the best!</div><div class="paragraph_break"><br /></div><div>Thanks,<br /></div><div>Saurav<br /></div>

如果我想更进一步并删除标签,检索所有文本:

puts Nokogiri::HTML(CGI.unescapeHTML(html)).content

输出

Hi All,Starting today we are initiating PoLS.Please use the following communication protocols:1. Task Breakup and allocation - Gravity2. All mail communications - BC messages3. Reports on PoC / Spikes: Writeboard4. Non story related tasks: BC To-Do5. All UI and HTML will communicated to you through BC.6. For File sharing,we'll be using DropBox.7. Use Skype for lighter and generic desicussions. However,then please use BC. PoLS conversation has been created on skype.You'll have been given necessary accesses to all these portals. Please start using them judicIoUsly.All the best!Thanks,Saurav

当我看到那种字符串时,这是我通常想要的地方.

Ruby的CGI使编码和解码HTML变得容易. Nokogiri宝石可以轻松删除标签.

猜你在找的Ruby相关文章