1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
| #!/usr/bin/perl;
use warnings;
use strict;
my $fichier_en = 'en-A61K.txt';
my $fichier_fr = 'fr-A61K.txt';
my $fichier_unk = 'unk-A61K.txt';
my $fichier_corpus = 'corpus-A61K.txt';
open my $fh_corpus, '<:utf8', $fichier_corpus or die "Impossible de lire $fichier_corpus\n";
open my $fh_fr, '>>:utf8', $fichier_fr or die "Impossible de lire $fichier_fr\n";
open my $fh_en, '>>:utf8', $fichier_en or die "Impossible de lire $fichier_en\n";
open my $fh_unk, '>>:utf8', $fichier_unk or die "Impossible de lire $fichier_unk\n";
my ( $CLASS, $TITLE, $ABS );
while ( my $ligne = <$fh_corpus> ) {
if ( ( $CLASS, $TITLE, $ABS )
= $ligne =~ /^<.*\d+>(.*)<ttp lng='eng'>.*<\/ttp>(.*)<reseng>.*<\/reseng>(.*)$/ )
{
print {$fh_en} "<title lang='eng'>"
. $TITLE
. "<\/title><abstract lang='eng'>"
. $ABS
. "<\/abstract><class>"
. $CLASS
. "<\/class>\n";
}
elsif ( ( $CLASS, $TITLE, $ABS )
= $ligne =~ /^<.*\d+>(.*)<ttp lng='fre'>.*<\/ttp>(.*)<reseng>.*<\/reseng>(.*)$/ )
{
print {$fh_en} "<abstract lang='eng'>" . $ABS . "<\/abstract><class>" . $CLASS . "<\/class>\n";
}
elsif ( ( $CLASS, $TITLE, $ABS )
= $ligne =~ /^<.*\d+>(.*)<ttp lng='fre'>.*<\/ttp>(.*)<resfre>.*<\/resfre>(.*)$/ )
{
print {$fh_fr} "<title lang='fre'>"
. $TITLE
. "</title><abstract lang='fre'>"
. $ABS
. "</abstract><class>"
. $CLASS
. "</class>\n";
}
elsif ( ( $CLASS, $TITLE, $ABS )
= $ligne =~ /^<.*\d+>(.*)<ttp lng='eng'>.*<\/ttp>(.*)<resfre>.*<\/resfre>(.*)$/ )
{
print {$fh_fr} "<abstract lang='fre'>" . $ABS . "</abstract><class>" . $CLASS . "</class>\n";
}
else {
print {$fh_unk} $ligne;
}
} |
Partager