Probleme avec un exercice en perl
Résolu
svenstek
-
svenstek Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
svenstek Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'arrive pas à résoudre un exercice en perl , l'exercice consiste à écrire un programme qui récupère toutes les dates(écrits en français sans séparateurs:exemple 12mars2002) à partir d'un fichier texte(qu'on va crée)ensuite affiche chaque date en chiffres avec saison associée
ex:sdfdsfdsfdsfdds14mai2003dsqdqsdsq31janvier1999 doit afficher:14mai2003:14.05.2003:printemps et ainsi de suite vous avez une idée ?
j'arrive pas à résoudre un exercice en perl , l'exercice consiste à écrire un programme qui récupère toutes les dates(écrits en français sans séparateurs:exemple 12mars2002) à partir d'un fichier texte(qu'on va crée)ensuite affiche chaque date en chiffres avec saison associée
ex:sdfdsfdsfdsfdds14mai2003dsqdqsdsq31janvier1999 doit afficher:14mai2003:14.05.2003:printemps et ainsi de suite vous avez une idée ?
A voir également:
- Probleme avec un exercice en perl
- Denon perl pro test - Accueil - Audio
- Fleur d'encre 5eme corrigé exercice ✓ - Forum PDF
- Transmath 3eme exercice ✓ - Forum Études / Formation High-Tech
- Active perl - Télécharger - Édition & Programmation
- Je voudrais télécharger le livre de prof 5ème fleurs d'encres - Forum PDF
5 réponses
Salut,
Par exemple
Le fichier
Le script
L'exécution
Par exemple
Le fichier
$ cat date.txt sdfdsfdsfdsfdds14mai2003dsqdqsdsq31janvier1999 sdfdsfdsfdsfdds24novembre2003dsqdqsdsq31juin1999 sdfdsfdsfdsfdds24décembre2003dsqdqsdsq31juillet1999 sdfdsfdsfdsfdds24TITI2003dsqdqsdsq31avril1999
Le script
$ cat cherche_date.pl #!/usr/bin/perl use strict;use warnings; open F,"date.txt" or die "E/S date.txt, $!\n"; my %mois=( "janvier" => ["01", "hiver"], "février" => ["02", "hiver"], "mars" => ["03", "printemps"], "avril" => ["04", "printemps"], "mai" => ["05", "printemps"], "juin" => ["06", "été"], "juillet" => ["07", "été"], "août" => ["08", "été"], "septembre"=> ["09", "automne"], "octobre" => ["10", "automne"], "novembre" => ["11", "automne"], "décembre" => ["12", "hiver"], ); while(<F>){ chomp; my @t=$_=~/(\d\d.*?\d{4})/g; for my $m(@t){ $m=~/(\d+)(\D+)(\d+)/; print "$m:$1.${$mois{$2}}[0].$3:${$mois{$2}}[1]\n" if grep {/$2/} keys %mois; } } __END__
L'exécution
$ perl cherche_date.pl 14mai2003:14.05.2003:printemps 31janvier1999:31.01.1999:hiver 24novembre2003:24.11.2003:automne 31juin1999:31.06.1999:été 24décembre2003:24.12.2003:hiver 31juillet1999:31.07.1999:été 31avril1999:31.04.1999:printemps
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question