IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Perl Discussion :

Fichier récupérer les lignes


Sujet :

Langage Perl

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 161
    Points : 78
    Points
    78
    Par défaut Fichier récupérer les lignes
    Bonjour,

    Je cherche à récupérer les lignes d'un fichier.

    Je fait une recherche sur un motif, et une fois ce motifs crée je veux récupérer les deux lignes du dessous.

    Je ne sais pas comment faire.

    Exemple de fichier :

    31/12/2006;02/01/2007;41100000;5013179;41,1
    31/12/2006;62838000;41,1;D;JUSTIFICATIF AE
    31/12/2006;02/01/2007;41100000;5691775;13,05;C
    31/12/2006;02/01/2007;41100000;1234567;41,1
    31/12/2006;62838000;41,1;D;JUSTIFICATIF AE
    31/12/2006;02/01/2007;41100000;5691775;13,05;C
    31/12/2006;02/01/2007;41100000;013179;41,1
    31/12/2006;62838000;41,1;D;JUSTIFICATIF AE
    31/12/2006;02/01/2007;41100000;5691775;13,05;C

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    #!/usr/bin/perl
     
    use strict;
    use warnings;
    use POSIX;
    use Math::BigInt;
    use Math::BigFloat;
     
    sub extraction_ligne() {
    	my $motifs = $_[0];
    	my $fichier = $_[1];
     
    	open(FILE,$fichier) || die("Erreur d'ouverture de $fichier") ;
    	while(<FILE>) {
    		if($_ =~ $motifs) {
    			print $_."\n";
    		}
    	}
    	close(FILE);
    }
     
    &extraction_ligne('5013179','R_2007-02-01.csv');
    Avec ce code je veux récupérer :

    31/12/2006;02/01/2007;41100000;5013179;41,1
    31/12/2006;62838000;41,1;D;JUSTIFICATIF AE
    31/12/2006;02/01/2007;41100000;5691775;13,05;C


    Merci de votre aide

  2. #2
    Membre chevronné
    Avatar de Woufeil
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    1 076
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 1 076
    Points : 2 004
    Points
    2 004
    Par défaut
    Bonjour,

    Si c'est juste les deux lignes du dessous que tu veux récupérer, c'est simple !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    print scalar(<FILE>) foreach (1..2);
    Ce code a un défaut : il ne fait aucun test sur les deux lignes qu'il écrit sur l'écran. Je ne sais pas si c'est génant. Est ce que les lignes à afficher peuvent contenir le motif de recherche ?

Discussions similaires

  1. [Débutant] Récupérer les lignes d'un fichier texte
    Par Titiso dans le forum VB.NET
    Réponses: 3
    Dernier message: 30/08/2014, 19h15
  2. Réponses: 2
    Dernier message: 19/01/2011, 15h41
  3. Récupérer les lignes d'un fichier-Solution multi OS
    Par rambc dans le forum Général Python
    Réponses: 5
    Dernier message: 26/05/2009, 15h39
  4. Réponses: 6
    Dernier message: 20/07/2007, 15h49
  5. Réponses: 1
    Dernier message: 07/06/2006, 18h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo