Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl Monk, Perl Meditation

Comment on

( #3333=superdoc: print w/replies, xml ) Need Help??

Thank you for the advice, Monks. I've made some progress but have also had some difficulties in pursuing my solution further. I have written code that does the majority of what I would like to accomplish, but here's where I'm stuck. For each line with 'id-info:' I need to get a copy of <ID> and assign to it an incremental counter, eventually getting to the point in my code where I can assign a hash as follows: (There are only about 10 unique IDs, just in case you're wondering..)


Some of the records appear as follows, which throws me off as I can't seem to access each individual line and instead access the record as a whole, correct?

rn: uid:<user>, <irrelevant-text> id-info: <URL> | 12345 6789 | <random-string> id-info: <URL> | 9876543 21 | <random-string> id-info: <URL> | 134257 869 | <random-string> creation-time: 1366069064

As you can see, the ID is split and attempting to join / assign the entire ID to a variable is turning out to be a pain. Monks, could I perhaps coax out some advice? Many thanks and infinite appreciation, VoidWander.


Was thinking something along the lines of this, but it seems like there would be an easier way and this obviously doesn't work...

if (/id-info:/mg){ ($_ =~ /.*\|(\d+) \|/mg) print $1, "\n"; }

In reply to Re: Parsing multi-line record with varying data by VoidWander
in thread Parsing multi-line record with varying data by VoidWander

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, 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, 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.
  • Log In?

    What's my password?
    Create A New User
    [ambrus]: ah, it's one of thos
    [Eily]: what, there's a difference between proof of concept and production?
    [LanX]: 20 years ago traders were complaining about the latency of the trading system...
    [ambrus]: I'm currently in the process of rewriting my proof of concept programs. They sort of developped organically as I was experimenting, so now I've got an ugly mess of multiple programs and one-liners held together by nothing. I'll have to rewrite them to som
    [ambrus]: ething that's both cleanly organized and mostly automated.
    LanX in train, bad connection
    [Corion]: ambrus: Yeah - we're in that situation too, except that there is no time to do the reorganizing :-/
    [LanX]: ... so my boss started a project with the newest sun servers and invited the traders to come on weekend to test it... and they were so pleased, that they forced him to keep it in production...
    [ambrus]: Corion: sure, this is the long-term plan. The short term is that I have to run this ungodly mess to get results from the new input data today.

    How do I use this? | Other CB clients
    Other Users?
    Others scrutinizing the Monastery: (16)
    As of 2017-03-29 11:49 GMT
    Find Nodes?
      Voting Booth?
      Should Pluto Get Its Planethood Back?

      Results (350 votes). Check out past polls.