Re: numerotation en 0001 , 0002 etc
[ Nouvelle discussion
| Répondre au groupe
|
fr.comp.lang.perl ]
Sujet: Re: numerotation en 0001 , 0002 etc
De: Paul.Gabo...@invalid.invalid (Paul Gaborit)
Groupes: fr.comp.lang.perl
Organisation: EMAC (Ecole des Mines d'Albi-Carmaux)
Date: 17. Jan 2008, 17:19:59
References: 1 2 3
|
À (at) 17 Jan 2008 15:20:54 +0100,
Patrice Karatchentzeff <p.karatchentzeff@free.fr> écrivait (wrote):
> jl_morel@bribes.org (Jean-Louis MOREL) a écrit :
>
>> En utilisant l'opérateur d'incrémentation ++ pardi !
>>
>> #!/usr/bin/perl
>> use strict;
>> use warnings;
>>
>> my $c = '0000';
>>
>> for (1..25) {
>> $c++;
>> print "$c\n";
>> }
>>
>> __END__
>
> marche pas ton truc :
>
> % perl -e '$inc='0000' ; for (1..5) {print $incr++, "\n"}'
> 0
Problème d'utilisation du 'shell' (ou "shell") d'une part, et de nom
de variable et donc d'absence de '-w' d'autre part. ;-)
Essayez donc :
% perl -we '$inc="0000" ; for (1..5) {print $inc++, "\n"}'
Cette fonctionnalité magique de l'opérateur '++' est documentée dans
'perlop'. Elle fonctione aussi avec les lettres. Mais elle n'existe
malheureusement pas pour les autres opérateurs (--, +, *, etc.).
Il faut donc aussi connaître la méthode plus générale en passant par
'sprintf' :
$incr = sprintf("%04d", $incr + 7);
--
Paul Gaborit - <http://perso.enstimac.fr/~gaborit/>
Perl en français - <http://perl.enstimac.fr/>

|
 cette fonctionnalité est reservée aux membres ayant une session active !
|