Beefy Boxes and Bandwidth Generously Provided by pair Networks
more useful options
 
PerlMonks  

Re: Split string after 14 Line Feeds? (//g)

by tye (Cardinal)
on Dec 03, 2012 at 23:17 UTC ( #1006962=note: print w/ replies, xml ) Need Help??


in reply to Split string after 14 Line Feeds?

my @chunks = $description =~ /^((?:[^\n]*\n){14}|.*)*/gs;

- tye        


Comment on Re: Split string after 14 Line Feeds? (//g)
Download Code
Re^2: Split string after 14 Line Feeds? (//g)
by johnfl68 (Beadle) on Dec 04, 2012 at 05:11 UTC
    Thanks. I think I see where you are going with this, but the array is coming up empty. I'll try and go over it again, regex's make my head hurt. :(

      Indeed. I conflated two similar techniques: getting a list of matches from /(...)/g and getting a list of matches from /(...)(...)(...)/. You don't get a list of matches from /(...)*/ (nor from /(...)*/g).

      What I should have written was:

      my @chunks = $description =~ /\G((?:[^\n]*\n){14}|.+)/gs;

      (tested even; works even)

      Update: Changed last * to + to eliminate extra empty string in result that I just noticed which is due to "quirk" in Perl regex processing (something I think we should just 'fix', but that is a story for another node, one I've written at least once already).

      - tye        

        Thank you very much! That works great!

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1006962]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (5)
As of 2014-09-03 04:59 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite cookbook is:










    Results (35 votes), past polls