|
|
Up |
|
|
  |
Author: mpgmpg Date: May 11, 2008 06:45
Bonjour,
Comme le titre bizarre le suggère, je ne sais pas bien le dire en français
alors je vais utiliser un exemple :
my $non_normal = `ls $TL/bin`;
$non_normal =~ s/\n/\$|/g;
Y a-t-il moyen de faire ça en une ligne ? Un peu de la même façon qu'on a le
droit de faire
chomp(my $non_normal = `ls $TL/bin`);
avec les deux opération `` et chomp en une instruction...
Merci d'avance !
Manuel.
|
| |
|
| | 7 Comments |
|
  |
Author: Benoit IzacBenoit Izac Date: May 11, 2008 07:14
Bonjour,
le 11/05/2008 à 15:45, mpg a écrit dans le message
talisker.lacave.net> :
> Comme le titre bizarre le suggère, je ne sais pas bien le dire en
> français alors je vais utiliser un exemple :
>
> my $non_normal = `ls $TL/bin`;
> $non_normal =~ s/\n/\$|/g;
>
> Y a-t-il moyen de faire ça en une ligne ? Un peu de la même façon
> qu'on a le droit de faire
>
> chomp(my $non_normal = `ls $TL/bin`);
>
> avec les deux opération `` et chomp en une instruction...
(my $non_normal = `ls $TL/bin`) =~ s/\n/\$|/g;
--
Benoit Izac
|
| |
|
| | no comments |
|
  |
Author: mpgmpg Date: May 11, 2008 10:08
Le (on) dimanche 11 mai 2008 16:14, Benoit Izac a écrit (wrote) :
> (my $non_normal = `ls $TL/bin`) =~ s/\n/\$|/g;
>
Ah bah oui, je me sens un peu bête, là . En fait, c'est comme chomp sauf
qu'on l'écrit à droite, j'aurais pu trouver...
(Autre) question stupide : hormis les aspects esthétiques, il y a une
différence d'efficacité entre les deux façons d'écrire le truc ?
Manuel.
|
| |
| no comments |
|
  |
Author: Benoit IzacBenoit Izac Date: May 11, 2008 12:09
Bonjour,
le 11/05/2008 à 19:08, mpg a écrit dans le message
talisker.lacave.net> :
>> (my $non_normal = `ls $TL/bin`) =~ s/\n/\$|/g;
>>
> Ah bah oui, je me sens un peu bête, là . En fait, c'est comme chomp
> sauf qu'on l'écrit à droite, j'aurais pu trouver...
perldoc perlop, cherche « Assignment Operators ».
> (Autre) question stupide : hormis les aspects esthétiques, il y a une
> différence d'efficacité entre les deux façons d'écrire le truc ?
À ma connaissance, c'est strictement équivalent.
--
Benoit Izac
|
| |
| no comments |
|
  |
Date: May 11, 2008 14:00
mpg wrote in message talisker.lacave.net>:
> Y a-t-il moyen de faire ça en une ligne ?
Tu as une bonne raison de vouloir rendre ton programme moins lisible,
j'espère ?
|
| |
| no comments |
|
  |
Author: Marc EspieMarc Espie Date: May 11, 2008 15:04
In article talisker.lacave.net>, mpg wrote:
>Le (on) dimanche 11 mai 2008 16:14, Benoit Izac a écrit (wrote) :
>> (my $non_normal = `ls $TL/bin`) =~ s/\n/\$|/g;
>Ah bah oui, je me sens un peu bête, là . En fait, c'est comme chomp sauf
>qu'on l'écrit à droite, j'aurais pu trouver...
>(Autre) question stupide : hormis les aspects esthétiques, il y a une
>différence d'efficacité entre les deux façons d'écrire le truc ?
Dans le cas de l'exemple que tu donnes, l'efficacite est de toutes facons
dans les choux grace au process externe ls (sans compter la portabilite).
Si c'est un vrai code et pas juste un exemple pour rire, commence par
utiliser opendir et readdir (et sort si necessaire).
|
| |
| no comments |
|
  |
Author: mpgmpg Date: May 11, 2008 17:08
Le (on) dimanche 11 mai 2008 23:00, Nicolas George a écrit (wrote) :
> mpg wrote in message talisker.lacave.net>:
>> Y a-t-il moyen de faire ça en une ligne ?
>
> Tu as une bonne raison de vouloir rendre ton programme moins lisible,
> j'espère ?
Est-ce que j'ai dit que je voulais le faire ? J'ai demandé si c'était
possible...
Manuel.
|
| |
| no comments |
|
  |
|
|
  |
Author: mpgmpg Date: May 11, 2008 17:11
Le (on) lundi 12 mai 2008 00:04, Marc Espie a écrit (wrote) :
> In article talisker.lacave.net>, mpg
> wrote:
>>Le (on) dimanche 11 mai 2008 16:14, Benoit Izac a écrit (wrote) :
>
>>> (my $non_normal = `ls $TL/bin`) =~ s/\n/\$|/g;
>
>>Ah bah oui, je me sens un peu bête, là . En fait, c'est comme chomp sauf
>>qu'on l'écrit à droite, j'aurais pu trouver...
>
>>(Autre) question stupide : hormis les aspects esthétiques, il y a une
>>différence d'efficacité entre les deux façons d'écrire le truc ?
>
> Dans le cas de l'exemple que tu donnes, l'efficacite est de toutes facons
> dans les choux grace au process externe ls (sans compter la portabilite).
>
Euh, oui, mauvais exemple. C'était plutôt une question d'ordre général.
Quant à la portabilité, ce n'est pas un objectif pour ce script précis,
mais...
|
| Show full article (1.04Kb) |
| no comments |
|
|
|
|