in reply to inserting text into an XML tree

You can do this in XML::Twig by creating the element with the parse method:

#!/bin/perl -w use strict; use XML::Twig; # create and load the twig (with pretty_print option) my $twig= new XML::Twig( pretty_print => 'indented'); $twig->parse( \*DATA); # get the insertion spot, you could also use the get_xpath method my $insert= $twig->root->first_child( 'insert'); # parse the text into a twig element my $text="<p>this is a paragraph with some <abbrev>XML</abbrev> in it< +/p>"; my $elt= parse XML::Twig::Elt( $text); # replace the <insert> element by the new one, you # can use $elt->insert to... insert the element $elt->replace( $insert); # out we go! $twig->print; print "\n"; __DATA__ <?xml version="1.0"?> <doc> <elt>just a filler</elt> <insert /> <elt>just another filler</elt> </doc>

You can go to the XML::Twig page for more info, including a new Quick Ref page to sort out the important from the rest in the doc ;--)

Replies are listed 'Best First'.
Re: Re: inserting text into an XML tree
by thraxil (Prior) on May 11, 2001 at 23:20 UTC