Perl: écrire dans un fichier

Grours -  
 lami20j -
Bonjour,

Je dois actuellement récupérer certaines informations dans un fichier txt puis les insérer dans une DTD afin d'en créer une nouvelle.

Le premier fichier contient ce type d'info:
word=abolish pos=verb priorpolarity=negative

Je dois récupérer ces infos pour les insérer dans une DTD qui contient déjà certaines infos que je dois supprimer.

Il faut juste que je garde le modèle de cette DTD:
<morpho>
<name>abandonner</name>
<category>VER</category>
</morpho>

et que j'arrive à ce résultat:
<morpho>
<name>abolish</name>
<category>VER</category>
</morpho>

Quelqu'un peut - il m'aider? je suis complètement perdue...

Merci
Configuration: Windows XP
Firefox 3.0.16

1 réponse

  1. lami20j
     
    Salut,
    lami20j@debian:~$ cat fichier.txt
    word=ecrire pos=verb priorpolarity=negative
    word=abolish pos=verb priorpolarity=negative
    
    lami20j@debian:~$ cat dtd.pl 
    #!/usr/bin/perl
    use strict;use warnings;
    
    my $model='<morpho>
    <name>-</name>
    <category>=</category>
    </morpho>
    
    ';
    
    my $fic='fichier.txt';
    my $fic2='dtd.txt';
    open F, $fic     or die "E/S $fic : $!\n";
    open FF,">$fic2" or die "E/S $fic2 : $!\n";
    
    while(<F>){
      my $res;
      next unless /=/;
      my @t=split /[\s=]/; 
      ($res=$model)=~s/-/$t[1]/;
      $res=~s/=/VER/;
      print FF "$res";
    }
    __END__
    
    lami20j@debian:~$ perl dtd.pl 
    lami20j@debian:~$ cat dtd.txt 
    <morpho>
    <name>ecrire</name>
    <category>VER</category>
    </morpho>
    
    <morpho>
    <name>abolish</name>
    <category>VER</category>
    </morpho>
    
    0