#! /usr/bin/perl use strict; use feature qw{ say }; use warnings; use XML::LibXML; my $xml = '
NA
'; print "Please specify node c content: "; chomp( my $new_text = ); my $dom = 'XML::LibXML'->load_xml(string => $xml); for my $node($dom->findnodes('(/header/id/b | /header/id/c)')) { $node->removeChildNodes; $node->appendText($new_text); } print $dom;