#!/usr/bin/perl -w use strict; use XML::Twig; my %unit2symbol= ( joule => 'J', meter => 'm'); XML::Twig->new( twig_roots => { unit => sub { print $_->text } }, twig_handlers => { divide => sub { $_->set_text( '/') }, ci => sub { $_->set_text( $unit2symbol{$_->text}); }, apply => sub { $_->child( 0)->move( after => $_->child( 1)); }, }, twig_print_outside_roots => 1, ) ->parse( \*DATA); __DATA__

10 joule meter 2