in reply to Re: Suggestions to make this code more Perlish
in thread Suggestions to make this code more Perlish
That's not the shortest way to do it in Perl 6, but it's closest to the Perl 5 example above.use v6; my regex fields { \" <( .*? )> \" | <-[,"]>* } my $input = open 'input.csv', :r; my $output = open 'output.tff', :w; for $input.lines { next unless /<fields>* % ','/; $output.print: @<fields>.join(chr 31) ~ chr 30; } $output.close;
A shorter and more Perl6-ish version might be:
my regex fields { \" <( .*? )> \" | <-[,"]>* } lines open 'input.csv' ==> map({@<fields>.join(chr 31) ~ chr 30 if /<fields>* % ','/}) ==> spurt('output.tff');
Damian
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^3: Suggestions to make this code more Perlish
by kcott (Archbishop) on Mar 30, 2014 at 15:08 UTC | |
by TheDamian (Vicar) on Mar 30, 2014 at 19:43 UTC | |
by kcott (Archbishop) on Mar 31, 2014 at 06:55 UTC | |
by TheDamian (Vicar) on Mar 31, 2014 at 07:40 UTC | |
by kcott (Archbishop) on Mar 31, 2014 at 07:56 UTC |