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 :

traitement sur un tableau


Sujet :

Langage Perl

  1. #1
    Membre émérite
    Avatar de Jasmine80
    Femme Profil pro
    Bioinformaticienne
    Inscrit en
    octobre 2006
    Messages
    3 157
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 41
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Bioinformaticienne
    Secteur : Santé

    Informations forums :
    Inscription : octobre 2006
    Messages : 3 157
    Points : 2 673
    Points
    2 673
    Par défaut traitement sur un tableau
    Bonjour à tous,

    J'ai un tableau et j'aimerais enlever à chaque entrée, tout ce qui se trouve avant la première tabulation.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    my @tab_trunc = map{s/^[^\t]*\t(.*)$/$1/} @{$files{$fi}};
    Je n'obtiens que des 1 ... faut-il ajouter () quelque part ? d'avance merci.
    -- Jasmine --

  2. #2
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : avril 2009
    Messages : 3 577
    Points : 5 753
    Points
    5 753
    Par défaut
    Soit tu écris :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    map{s/^[^\t]*\t(.*)$/$1/} @{$files{$fi}}; # dans ce cas, le tableau modifié est @files
    Soit tu écris :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    use feature qw(:5.10);
    # ...
    my @tab_trunc = map{s/^[^\t]*\t(.*)$/$1/r} @{$files{$fi}}; # @files inchangé
    ou encore :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    my @tab_trunc = map{my $file = $_; $file =~ s/^[^\t]*\t(.*)$/$1/; $file } @{$files{$fi}}; # @files inchangé
    Dans ton écriture initiale, pour chaque élément de @files, ton map retourne le résultat de s///, c'est à dire 1 s'il y a substitution et 0 sinon.
    Dans mon écriture 2, le s///r retourne une copie de $_ substitué
    Plus j'apprends, et plus je mesure mon ignorance (philou67430)
    Toute technologie suffisamment avancée est indiscernable d'un script Perl (Llama book)
    Partagez vos problèmes pour que l'on partage ensemble nos solutions : je ne réponds pas aux questions techniques par message privé
    Si c'est utile, say

  3. #3
    Membre émérite
    Avatar de Jasmine80
    Femme Profil pro
    Bioinformaticienne
    Inscrit en
    octobre 2006
    Messages
    3 157
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 41
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Bioinformaticienne
    Secteur : Santé

    Informations forums :
    Inscription : octobre 2006
    Messages : 3 157
    Points : 2 673
    Points
    2 673
    Par défaut
    Bonjour Philou et merci beaucoup pour ton aide,

    r - perform non-destructive substitution and return the new value
    ... je ne connaissais pas :-) mais c'est vraiment très utile !

    Bonne journée.
    -- Jasmine --

  4. #4
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : avril 2009
    Messages : 3 577
    Points : 5 753
    Points
    5 753
    Par défaut
    Toutafait, je l'utilise à foison.
    Plus j'apprends, et plus je mesure mon ignorance (philou67430)
    Toute technologie suffisamment avancée est indiscernable d'un script Perl (Llama book)
    Partagez vos problèmes pour que l'on partage ensemble nos solutions : je ne réponds pas aux questions techniques par message privé
    Si c'est utile, say

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Traitement sur un tableau de chaines de caratères
    Par Anduriel dans le forum MATLAB
    Réponses: 3
    Dernier message: 02/08/2011, 13h26
  2. erreur sur le traitement d'un tableau
    Par vince2005 dans le forum Langage
    Réponses: 1
    Dernier message: 13/09/2010, 12h19
  3. ajax et traitement sur tableau dans le code behind
    Par bobby51 dans le forum ASP.NET Ajax
    Réponses: 2
    Dernier message: 21/04/2010, 12h12
  4. Comment faire un Drag&Drop sur un tableau
    Par Stef.web dans le forum Composants VCL
    Réponses: 6
    Dernier message: 11/10/2003, 14h12
  5. [VBA-E] Dim dynamique sur un tableau
    Par Vince69 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 12/12/2002, 14h32

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