~$ raku -e ' \ my Str $AltClickHere = lines[0]; \ my @AltArray = $AltClickHere ~~ m:g/ <?before ^ | download > .*? <?before \> | \h+ > /; \ .put for @AltArray;' todd_test.txt download='betterbird-128.6.0esr-bb20.de.linux-x86_64.tar.bz2' download='betterbird-128.6.0esr-bb20.en-US.linux-x86_64.tar.bz2' download='betterbird-128.6.0esr-bb20.es-AR.linux-x86_64.tar.bz2'
OR maybe: ~$ raku -e ' \ my Str $AltClickHere = lines[0]; \ my @AltArray = $AltClickHere.match(:global, / <?before ^ | download > .*? <?before \> | \h+ > /); \ .put for @AltArray;' todd_test.txt download='betterbird-128.6.0esr-bb20.de.linux-x86_64.tar.bz2' download='betterbird-128.6.0esr-bb20.en-US.linux-x86_64.tar.bz2' download='betterbird-128.6.0esr-bb20.es-AR.linux-x86_64.tar.bz2' OR even: ~$ raku -e ' \ my Str $AltClickHere = lines[0]; my @AltArray; \ @AltArray.push: $_ for $AltClickHere.match(:global, / <?before ^ | download > .*? <?before \> | \h+ > /); \ .put for @AltArray;' todd_test.txt download='betterbird-128.6.0esr-bb20.de.linux-x86_64.tar.bz2' download='betterbird-128.6.0esr-bb20.en-US.linux-x86_64.tar.bz2' download='betterbird-128.6.0esr-bb20.es-AR.linux-x86_64.tar.bz2' HTH, Bill. > On Jan 10, 2025, at 21:35, ToddAndMargo via perl6-users > <perl6-us...@perl.org> wrote: > > >>> On Jan 10, 2025, at 17:50, ToddAndMargo via perl6-users <perl6- >>> us...@perl.org> wrote: >>> >>> Hi All, >>> >>> I am scratching my head trying to figure out how to cut >>> up this long line; >>> >>> >>> download='betterbird-128.6.0esr-bb20.de.linux-x86_64.tar.bz2'><div >>> class="img bz2"></div><div class="name"><div class="file fs-1-2 >>> bold">betterbird-128.6.0esr-bb20.de.linux-x86_64.tar.bz2</div><div >>> class="data upper size fs-0-7"><span class="bold">Size:</span> 80.26<span >>> class="fs-0-8 bold">MB</span></div><div class="data upper modified >>> fs-0-7"><span class="bold">Last modified:</span> Tue. January 7th, 2025 - >>> 10:54pm</div></div></a></div><div class="block"><a >>> href="LinuxArchive/betterbird-128.6.0esr-bb20.en-US.linux- x86_64.tar.bz2" >>> class="bz2" download='betterbird-128.6.0esr-bb20.en- >>> US.linux-x86_64.tar.bz2'><div class="img bz2"></div><div class="name"><div >>> class="file fs-1-2 bold">betterbird-128.6.0esr- >>> bb20.en-US.linux-x86_64.tar.bz2</div><div class="data upper size >>> fs-0-7"><span class="bold">Size:</span> 80.04<span class="fs-0-8 >>> bold">MB</span></div><div class="data upper modified fs-0-7"><span >>> class="bold">Last modified:</span> Tue. January 7th, 2025 - 10:42pm</ >>> div></div></a></div><div class="block"><a href="LinuxArchive/ >>> betterbird-128.6.0esr-bb20.es-AR.linux-x86_64.tar.bz2" class="bz2" >>> download='betterbird-128.6.0esr-bb20.es-AR.linux-x86_64.tar.bz2'><div >>> class="img bz2"></div><div class="name"><div class="file fs-1-2 >>> bold">betterbird-128.6.0esr-bb20.es-AR.linux-x86_64.tar.bz2</div> >>> >>> >>> What I want to come out of it is an array of stings starting >>> at "download" and ending at ">" or "<" >>> >>> download='betterbird-128.6.0esr-bb20.de.linux-x86_64.tar.bz2' >>> download='betterbird-128.6.0esr-bb20.en-US.linux-x86_64.tar.bz2' >>> download='betterbird-128.6.0esr-bb20.es-AR.linux- >>> x86_64.tar.bz2'x86_64.tar.bz2 >>> >>> >>> Many thanks, >>> -T > > On 1/10/25 8:59 PM, William Michels via perl6-users wrote: > > Hi Todd, > > > > ~$ raku -ne 'put $/.join("\n") if m:g/ <?before download> .*? <?before > > \> | \h+ > /;' todd_test.txt > > download='betterbird-128.6.0esr-bb20.de.linux-x86_64.tar.bz2' > > download='betterbird-128.6.0esr-bb20.en-US.linux-x86_64.tar.bz2' > > download='betterbird-128.6.0esr-bb20.es-AR.linux-x86_64.tar.bz2' > > > > See: https://docs.raku.org/syntax/%24%2F <https://docs.raku.org/syntax/ > > %24%2F> > > See: https://docs.raku.org/language/regexes#Lookahead_assertions > > <https://docs.raku.org/language/regexes#Lookahead_assertions> > > > > OR: > > > > ~$ raku -ne 'put $/.join("\n") if m:g/ <( download .*? )> [ \> | > > \h+ ] /;' todd_test.txt > > download='betterbird-128.6.0esr-bb20.de.linux-x86_64.tar.bz2' > > download='betterbird-128.6.0esr-bb20.en-US.linux-x86_64.tar.bz2' > > download='betterbird-128.6.0esr-bb20.es-AR.linux-x86_64.tar.bz2' > > > > See: https://docs.raku.org/language/regexes#Capture_markers:_%3C(_)%3E > > <https://docs.raku.org/language/regexes#Capture_markers:_%3C(_)%3E> > > > > Let me know if this is part of a larger script, how you're obtaining the > > input line(s), etc., if you need more guidance. > > > > HTH, > > > > Bill. > > > > Hi Bill, > > Thank you! > > I will not have the time to do any programming till maybe > Sunday, so I will not have a chance till then to test > this out. > > Yes, this is a simplification of a much larger program. > The line in question is > > line 379 > view-source:https://www.betterbird.eu/downloads/index.php > > The YUGE run on line. (I hate when they do that.) > > I am having a problem figuring out how to get your example > into an array of strings. > > The long line will reside in > my Str $AltClickHere; > > And the resulting array will reside in > my @AltArray > > Would you mind showing me how to do that whilst I wait > for some free time? > > Many thanks, > -T > > >