Here's something to illustrate perhaps a little better what I had in mind:

c:\@Work\Perl\monks>perl -wMstrict -le "use constant MAX => 32_760; ;; my $s = 'FLAGS xyzzy UID 42 RFC {234565} ' . 'a' x 234565 . 'Y yyyy'; print substr $s, 0, 50; print substr $s, -50; print length $s; ;; my %piece; ;; PARSE: { if ($s =~ m{ \G RFC \s* \{ (\d+) \} \s* }xmsgc) { my $total = $1; use integer; my $n = $total / MAX; my $m = $total % MAX; $s =~ m{ \G ((?: .{${ \MAX }}){$n} .{$m}) \s* }xmsg or die 'no co +unt'; $piece{rfc} = $1; redo PARSE; } elsif ($s =~ m{ \G \s* Y \s* (\w+) \s* }xmsgc) { $piece{y} = $1; redo PARSE; } elsif ($s =~ m{ \G UID \s* (\d+) \s* }xmsgc) { $piece{uid} = $1; redo PARSE; } elsif ($s =~ m{ \G \s* FLAGS \s* (\w+) \s* }xmsgc) { $piece{flags} = $1; redo PARSE; } else { last PARSE; } } ;; print qq{flags '$piece{flags}' uid '$piece{uid}' y '$piece{y}'}; printf qq{start rfc: '%s' \n}, substr $piece{rfc}, 0, 30; printf qq{ end rfc: '%s' \n}, substr $piece{rfc}, -30; print 'length rfc: ', length $piece{rfc}; " FLAGS xyzzy UID 42 RFC {234565} aaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaY yyyy 234603 flags 'xyzzy' uid '42' y 'yyyy' start rfc: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' end rfc: 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' length rfc: 234565


Give a man a fish:  <%-{-{-{-<


In reply to Re: Matching n characters with m//g by AnomalousMonk
in thread Matching n characters with m//g by medium.dave

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.