Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine

Re: Not able to capture information

by oko1 (Deacon)
on Feb 17, 2012 at 06:29 UTC ( #954412=note: print w/replies, xml ) Need Help??

in reply to Not able to capture information

Man, that's one ugly regex. And I say that as a guy who's written a lot of ugly regexes. :)

I _think_ (kinda hard to tell from your misformatted "desired answer" line) you're looking for something like this:

#!/usr/bin/perl use common::sense; my $data = do { local $/; <DATA>; }; $data =~ s/\n(?!\[)/ /gs; for (split /\n/, $data){ my @line = split /[\[\] ]+|ERRORMSG /, $_, 6; print join(" === ", @line[1..3,5]), "\n"; } __DATA__ [2012/02/16 00:08:34] [29] ERRORMSG unknown error Can't insert into pr +ice table Please check line 52. [2012/02/16 00:08:34] [39] ERRORMSG Invalid User [2012/02/16 00:14:52] [105] ERRORMSG missing conversion rate [2012/02/16 00:14:52] [29] ERRORMSG Can't use an undefined value as a +HASH reference at line 77.


2012/02/16 === 00:08:34 === 29 === unknown error Can't insert into pri +ce table Please check line 52. 2012/02/16 === 00:08:34 === 39 === Invalid User 2012/02/16 === 00:14:52 === 105 === missing conversion rate 2012/02/16 === 00:14:52 === 29 === Can't use an undefined value as a H +ASH reference at line 77.

Is that what you're looking for?

Update: Whoops - I think I just figured out what the OP is asking... so there are two problems in his code. Revised solution.

I hate storms, but calms undermine my spirits.
 -- Bernard Moitessier, "The Long Way"

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://954412]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (4)
As of 2017-11-20 07:05 GMT
Find Nodes?
    Voting Booth?
    In order to be able to say "I know Perl", you must have:

    Results (284 votes). Check out past polls.