[PERL]Fichier annexe...
Résolu/Fermé
Zep3k!GnO
Messages postés
2025
Date d'inscription
jeudi 22 septembre 2005
Statut
Membre
Dernière intervention
18 novembre 2015
-
24 oct. 2005 à 14:10
Zep3k!GnO Messages postés 2025 Date d'inscription jeudi 22 septembre 2005 Statut Membre Dernière intervention 18 novembre 2015 - 25 oct. 2005 à 13:55
Zep3k!GnO Messages postés 2025 Date d'inscription jeudi 22 septembre 2005 Statut Membre Dernière intervention 18 novembre 2015 - 25 oct. 2005 à 13:55
A voir également:
- [PERL]Fichier annexe...
- Fichier rar - Guide
- Fichier host - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier iso - Guide
3 réponses
crabs
Messages postés
908
Date d'inscription
lundi 18 avril 2005
Statut
Membre
Dernière intervention
3 août 2008
507
24 oct. 2005 à 20:16
24 oct. 2005 à 20:16
salut,
Tu lis le fichier qui contient les substitutions et t'en fait un tableau associatif
ensuite tu lis le fichier texte, et pour chaque ligne tu fais une boucle de
substition en utilisant le tableau associatif précédement créé.
Enfin quand je dis 'tu', je penses 'ton programme' ;-)
Attention A,B,C,D ne sont pas assez discriminant et il se peut que tu obtiennes
des substitutions non voulues, exemple :
"A la fête de A, B a rencontré C."
Le premier 'A' serait remplacé alors qu'il faut pas...
A+, crabs
Tu lis le fichier qui contient les substitutions et t'en fait un tableau associatif
ensuite tu lis le fichier texte, et pour chaque ligne tu fais une boucle de
substition en utilisant le tableau associatif précédement créé.
Enfin quand je dis 'tu', je penses 'ton programme' ;-)
Attention A,B,C,D ne sont pas assez discriminant et il se peut que tu obtiennes
des substitutions non voulues, exemple :
"A la fête de A, B a rencontré C."
Le premier 'A' serait remplacé alors qu'il faut pas...
A+, crabs
hssissen
Messages postés
844
Date d'inscription
mercredi 20 juillet 2005
Statut
Membre
Dernière intervention
9 janvier 2017
50
24 oct. 2005 à 20:43
24 oct. 2005 à 20:43
Salut,
Voici un un script tres elementaire qui arrive a faire ce que tu veux, mais essaie de trouver un moyen pour qu'il ne fait pas des sauts des lignes et qu'il garde la ponctuation. Ces dernieres je l'ai enleve pour qu'il arrive a lire tes alphabets avant une ponctuation, exp. de ton texte:
Bonjour A va bien il discute avec B.
Il faut bien qu'il distingue A et le point, sinon il va le considerer comme un seul mot, i.e A. Il faut jouer donc avec les expressions regulieres.
Voici le script mais tu dois ameliorer la sortie.
#!/usr/bin/perl -w
open(FICA, "A.txt") || die "impossible d'ouvrir sortie: $!\n";
open(FICB, "B.txt") || die "impossible d'ouvrir sortie: $!\n";
@ligne=(); #contient ta phrase
@mots=();# contient les noms et alphabets
@ligne=(split(/[. , ]/,<FICA>));
@mots=<FICB>;
for ($i=0; $i<@ligne; $i++){
if ($ligne[$i] eq 'A'){
$ligne[$i]=$mots[0];
}
if($ligne[$i] eq 'B'){
$ligne[$i]=$mots[1];
}
if($ligne[$i] eq 'C'){
$ligne[$i]=$mots[2];
}
if($ligne[$i] eq 'D'){
$ligne[$i]=$mots[3];
}
}
print "@ligne";
close(FICA);
close(FICB);
Voici un un script tres elementaire qui arrive a faire ce que tu veux, mais essaie de trouver un moyen pour qu'il ne fait pas des sauts des lignes et qu'il garde la ponctuation. Ces dernieres je l'ai enleve pour qu'il arrive a lire tes alphabets avant une ponctuation, exp. de ton texte:
Bonjour A va bien il discute avec B.
Il faut bien qu'il distingue A et le point, sinon il va le considerer comme un seul mot, i.e A. Il faut jouer donc avec les expressions regulieres.
Voici le script mais tu dois ameliorer la sortie.
#!/usr/bin/perl -w
open(FICA, "A.txt") || die "impossible d'ouvrir sortie: $!\n";
open(FICB, "B.txt") || die "impossible d'ouvrir sortie: $!\n";
@ligne=(); #contient ta phrase
@mots=();# contient les noms et alphabets
@ligne=(split(/[. , ]/,<FICA>));
@mots=<FICB>;
for ($i=0; $i<@ligne; $i++){
if ($ligne[$i] eq 'A'){
$ligne[$i]=$mots[0];
}
if($ligne[$i] eq 'B'){
$ligne[$i]=$mots[1];
}
if($ligne[$i] eq 'C'){
$ligne[$i]=$mots[2];
}
if($ligne[$i] eq 'D'){
$ligne[$i]=$mots[3];
}
}
print "@ligne";
close(FICA);
close(FICB);
Zep3k!GnO
Messages postés
2025
Date d'inscription
jeudi 22 septembre 2005
Statut
Membre
Dernière intervention
18 novembre 2015
200
25 oct. 2005 à 13:55
25 oct. 2005 à 13:55
Yes merci a vous 2 !
du coups j'me suis débrouillé car fallait que je gère ça hier au taff :P
Mais ouais du coups je suis passé par les tableau et Zou ,boum pif paf !
En tous cas ,sympa le script j'me le mets sous le coude ^^ .
Merci les gars.
@+
Zep3k!GnO
-->hi i hi o on va pas au boulot :P
du coups j'me suis débrouillé car fallait que je gère ça hier au taff :P
Mais ouais du coups je suis passé par les tableau et Zou ,boum pif paf !
En tous cas ,sympa le script j'me le mets sous le coude ^^ .
Merci les gars.
@+
Zep3k!GnO
-->hi i hi o on va pas au boulot :P