2009-09-01 8 views

Répondre

0

Je ne suis pas couramment le rubis. mais normalement vous devriez avoir: élément div - et TextNode « quatre-vingts et il y a sept ans »

maintenant si vous voulez insérer quelque chose que vous aurez à:

  • diviser le texte à partir du nœud de texte dans deux (l'original doit changer « quatre points ») avec recherche de texte/fonctions séparées
  • créer un élément
  • créer un nouveau nœud de texte avec le reste du texte
  • ajouter l'un élément à la div élément et ensuite ajouter le te nouvellement créé noeud xt
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>