@@ -25,7 +25,7 @@ $xml .= " jumps over the lazy dog."; my $new_element = "canid"; -my @queried = ("lazy dog", "quick brown fox", "the"); +my @queried = ("lazy dog", "quick brown fox", "he", "e"); my $dom = 'XML::LibXML'->load_xml(string => $xml); @@ -55,7 +55,10 @@ my $start_text = $from == $to ? $preceding : $texts[$from]; insert_tag($start_text, $found, 'start', $query); - last OUTER; + @texts = $dom->findnodes('//text()'); + $from += $from == $to ? 1 : 2; + + last OUTER if $from > @texts; } } print $dom;