develooper Front page | perl.perl6.users | Postings from September 2020

Re: How to I modify what is a new line in lines?

Thread Previous | Thread Next
From:
ToddAndMargo via perl6-users
Date:
September 1, 2020 00:12
Subject:
Re: How to I modify what is a new line in lines?
Message ID:
aedb9d05-3056-aa3f-e5c3-c19a436ac17a@zoho.com
On 2020-08-30 08:42, yary wrote:
> You were close!
> 
> First, you were looking at the docs for Path's "lines", but you are 
> using a string "lines" and those docs say
> 
> multi method lines(Str:D: $limit, :$chomp = True)
> multi method lines(Str:D: :$chomp = True)
> 
> Files get "nl-in" due to the special case of text files having various 
> line endings to tweak.
> 
> Strings already have "split" and "comb" for all the flexibility one may 
> need there, and what you're playing with is more naturally
> dd $_ for $x.split("\t"); # "a","b", ... removes \t
> dd $_ for $x.split(/<?after \t>/); "a\t","b\t", ....
> 
> Now back to the Path lines, which DOES let you specify line endings
> 
> methodlines(IO::Path:D::$chomp=True, :$enc='utf8', :$nl-in= ["\x0A", 
> "\r\n"], |c-->Seq:D)
> 
> $ cat line0-10.txt
> Line 0
> Line 1
> Line 2
> ...
> 
> let's pretend that the letter "i" is a line ending.
> named arguments can be conveniently written colon pairs :-)
> 
> my $nl-in="i"; dd $_ for 'line0-10.txt'.IO.lines(:$nl-in)[0..3];
> "L"
> "ne 0\nL"
> "ne 1\nL"
> "ne 2\nL"
> 
> How about splitting on either "i" or "\n", and not chomping
> 
> my $nl-in=("i","\n"); dd $_ for 'line0-10.txt'.IO.lines(:$nl-in, 
> :!chomp)[0..3];
> "Li"
> "ne 0\n"
> "Li"
> "ne 1\n"
> 
> To put in line endings without having a variable of the same name as the 
> naed arg, use the full form of the colon pair
> dd $_ for 'line0-10.txt'.IO.lines(:nl-in["i","\n"], :!chomp)[0..3];
> "Li"
> "ne 0\n"
> "Li"
> "ne 1\n"
> 
> 
> 
> -y

Hi Yary,

Now what am I doing wrong?

p6 'my $x="a\tb\tc\td\t"; dd $x; for $x.lines(:nl-in["\t", 0x09], 
:!chomp) {dd $_};'

Str $x = "a\tb\tc\td\t"

"a\tb\tc\td\t"

:'(
-T

Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About