как удалить только синтаксис комментариев?

Я хочу собрать все теги из файла XML. Как удалить только синтаксис комментариев?

XML-файл:

<xml>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname>Holt</surname>
<given-names> Maurice<!--<xref ref-type="fn" rid="fnI_1"><sup>1</sup></xref>--></given-names>
</name>
</contrib>
</contrib-group>
</xml>

Мне нужен вывод как:

<xml>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname>Holt</surname>
<given-names> Maurice<xref ref-type="fn" rid="fnI_1"><sup>1</sup></xref></given-names>
</name>
</contrib>
</contrib-group>
</xml>

Как я могу удалить комментарии... без удаления содержимого?

сценарий:

#!/usr/bin/perl
use warnings;
use strict;
use XML::Twig;

open(my $output , '>', "split.xml") || die "can't open the Output $!\n";
my $xml = XML::Twig->new( twig_handlers => { xref => sub{comments => 'drop'} } );
$xml->parsefile("sample.xml");
$xml->print($output);

У меня не получается... Как удалить только <!-- --> без удаления содержимого?


person user1811486    schedule 08.01.2013    source источник


Ответы (1)


person    schedule
comment
Он не может обработать этот скрипт, некоторые ошибки возникают во время компиляции, поэтому, пожалуйста, если есть другой способ..? - person user1811486; 08.01.2013
comment
@ user1811486: Пожалуйста, опишите ошибки, которые вы получаете. Какую версию Perl вы используете? Вам просто нужно установить XML::Twig? - person Borodin; 08.01.2013
comment
В настоящее время я использую версию Perl 5.8, а затем XML :: Twig также установил, а затем возникают ошибки: не удается найти метод объекта «set_outer_xml», как я могу решить эту проблему? - person user1811486; 08.01.2013
comment
@ user1811486: Обновите XML::Twig. - person choroba; 08.01.2013
comment
Спасибо, все работает хорошо, комментарии => 'drop', я использую это, отлично работает .. - person user1811486; 08.01.2013