#!perl use strict; use warnings; use XML::Twig; my $t= XML::Twig->new(pretty_print => 'indented', twig_handlers=>{ 'xdoc/MsgSigs/MsgSig'=>sub{ my $keytext = $_[1]->first_child('Key')->text; my $descrtext = $_[1]->first_child('Description')->text; $_[1]->first_child('Description')->set_text($descrtext." ($keytext)"); $_[0]->flush; } } ); $/=''; $t->parse(); __DATA__ TSC1 - Torque/Speed Cntrl 1 ln1 True net0 TSC1 - Torque/Speed Cntrl 1 ln2 True net0 0_SPN695 Eng. Override sig695 1 ###OUTPUT TSC1 - Torque/Speed Cntrl 1 (ln1) ln1 True net0 TSC1 - Torque/Speed Cntrl 1 (ln2) ln2 True net0 0_SPN695 Eng. Override sig695 1