2
Nokogiri("<a href='*|UNSUB|*'>unsubscribe</a>").to_html
# returns
"<a href="*%7CUNSUB%7C*">unsubscribe</a>"
如何让Nokogiri不逃避管道?防止Nokogiri逃离URL中的字符
Nokogiri("<a href='*|UNSUB|*'>unsubscribe</a>").to_html
# returns
"<a href="*%7CUNSUB%7C*">unsubscribe</a>"
如何让Nokogiri不逃避管道?防止Nokogiri逃离URL中的字符
require 'nokogiri'
doc = Nokogiri("<a href='*|UNSUB|*'>unsubscribe</a>")
puts doc.to_html
#=> <a href="*%7CUNSUB%7C*">unsubscribe</a>
puts doc.to_xml
#=> <?xml version="1.0"?>
#=> <a href="*|UNSUB|*">unsubscribe</a>
或者:
puts doc.to_html.gsub('%7C','|')
#=> <a href="*|UNSUB|*">unsubscribe</a>
为什么要产生[无效URI(http://stackoverflow.com/questions/1547899/which-characters-make-a-url-invalid )? Nokogiri正在帮你一个忙。 – Phrogz 2011-12-16 05:00:30
因为我需要将URL发送到正在查找诸如\ * | UNSUB | *之类的URL的服务,它们将用取消订阅URL替换它。 – 2011-12-16 07:49:12