假设我有这个HTML:
html = <div>Four score and seven years ago</div>
在“得分”一词之后插入(比方说)锚标记的最佳方法是什么?注意:我想在DOM操作(使用Hpricot,例如)而不是方面进行文本操作(例如,无正则表达式)
答案 0 :(得分:1)
require 'rubygems'
require 'nokogiri'
doc = Nokogiri::XML(DATA)
text = doc.xpath('//text()').first
text.content =~ /^(.*score)(.*)$/
text.content = $1
node = Nokogiri::XML::Node.new('a',doc)
text.add_next_sibling node
node.add_next_sibling Nokogiri::XML::Text.new($2,doc)
puts doc.to_xml
__END__
<div>Four score and seven years ago</div>
答案 1 :(得分:0)
我不是那种流利的红宝石。但通常你应该: 元素div - 和TextNode“四分和七年前”
现在,如果你想插入一些东西,你需要: