use warnings; use strict; use XML::Twig; my $str = < Satan moneypenny EOF my $t = XML::Twig->new( pretty_print => 'indented', twig_handlers => { _all_ => sub { $_->delete() unless $_->text() } } ); $t->parse($str); $t->print(); __END__ Satan moneypenny