如何使用Perl更改XML标记的值

use*_*649 3 xml perl

我们假设我的XML文件是这样的:

<? xml version="1.0" encoding="iso-8859-1" ?>
  <Body>
    <RequiredTag>
      #VALUE#
    </RequiredTag>
  </Body>
Run Code Online (Sandbox Code Playgroud)

如何使用Perl更改所需标记的值?

例如:

$XmlHandle->{XML}->{Body}->{RequiredTag} = "RequiredValue";
Run Code Online (Sandbox Code Playgroud)

mir*_*rod 6

使用XML :: Twig ::

#!/usr/bin/perl

use strict;
use warnings;

use XML::Twig;

XML::Twig->new( twig_handlers => 
                  { RequiredTag => sub { $_->set_text( 'RequiredValue') } },
                pretty_print => 'indented',
              )
         ->parsefile( 'my_file.xml')
         ->print;
Run Code Online (Sandbox Code Playgroud)