我想使用Nokogiri中的XML Builder向HTML添加项目符号点“•”之类的东西,但是所有内容都被转义了.如何防止它逃脱?
我希望结果是:
<span>•</span>
而不是:
<span>&#8226;</span>
我只是在这样做:
xml.span { xml.text "•\ " }
我想念什么?最佳答案如果您定义
class Nokogiri::XML::Builder def entity(code) doc = Nokogiri::XML("<?xml version='1.0'?><root>&##{code};</root>") insert(doc.root.children.first) end end
然后这个
builder = Nokogiri::XML::Builder.new do |xml| xml.span { xml.text "I can has " xml.entity 8665 xml.text " entity?" } end puts builder.to_xml
产量
<?xml version="1.0"?><span>I can has • entity?</span>
PS仅是一种解决方法,有关干净的解决方案,请参阅libxml2文档(Nokogiri基于libxml2构建)以获取更多帮助.但是,即使是这些人admit that handling entities can be quite ..err,cumbersome sometimes. 总结
以上是内存溢出为你收集整理的如何使用Nokogiri :: XML :: Builder将未转义的&符号添加到HTML 全部内容,希望文章能够帮你解决如何使用Nokogiri :: XML :: Builder将未转义的&符号添加到HTML 所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)