Ryan,

Yes thank you that works and did the trick.

Kind regards,

Raoul. 

On Tue, 2006-01-10 at 16:48 -0500, Ryan Frantz wrote:
> 
> > -----Original Message-----
> > From: Raoul Ripmeester [mailto:[EMAIL PROTECTED]
> > Sent: Tuesday, January 10, 2006 4:48 PM
> > To: beginners@perl.org
> > Subject: Splitting file
> > 
> > Hello all,
> 
> Hello,
> 
> 
> > 
> > I am a newbe so please bare with me :
> > 
> > I am trying to split lines of a file into variables so I can do some
> > sorting and other stuff with this. Now my script is working but the
> > split is giving me problems. I am splitting on the space character,
> but
> > the line(s) can contain multiple spaces. Underneath a few sample lines
> > that I am trying to split.
> > 
> > <logfile>
> > 
> >  7-NOV-2005 09:24:00.56 PRIVILEGE  PRVAUD_SUCCESS   SMC8   SMCMAN
> > 000002DF TXA4:
> >  7-NOV-2005 09:24:24.36 PRIVILEGE  PRVAUD_SUCCESS   SMC8   SMCMAN
> > 000002DF TXA4:
> >  7-NOV-2005 09:25:16.44 PRIVILEGE  PRVAUD_SUCCESS   SMC8   SMCMAN
> > 000002DF TXA4:
> >  7-NOV-2005 09:25:42.22 PRIVILEGE  PRVAUD_SUCCESS   SMC8   SMCMAN
> > 000002DF TXA4:
> >  7-NOV-2005 09:27:53.48 PRIVILEGE  PRVAUD_SUCCESS   SMC8   SMCMAN
> > 000002DF TXA4:
> >  7-NOV-2005 09:29:51.32 LOGOUT     LOCAL            SMC8   SMCMAN
> > 000002DF _TXA4:
> >  7-NOV-2005 09:46:13.94 LOGIN      LOCAL            SMC8   SMCMAN
> > 000002E0 _TXA4:
> > </logfile>
> > 
> > And here is a part of the code I am using ( the print statements are
> > just to test the splitting ) :
> > 
> > <code>
> > 
> > open (FILE, $file ) || die  ("open of $file failed $! \n") ;
> >     while (<FILE>){
> 
> To match one or more spaces, your regex should be:
> 
> /\s+/
> 
> This:
> >               ($date,$time,$type,$subtype,$node,$username,$ID, $term)
> =
> > split(/ /,$_) ;
> 
> becomes:
> ($date,$time,$type,$subtype,$node,$username,$ID, $term) =
> split(/\s+/,$_) ;
> 
> ry
> 
> >               print "date = $date \t time = $time \t type = $type \n"
> ;
> >               print "subtype = $subtype \t node = $ node \t username =
> > $username \n " ;
> >               print "ID = $ID \t term = $term \n " ;
> >               }
> > 
> > </code>
> > 
> > How can I make the split to work with one or multiple space. I tried
> to
> > split on / .*/  But that will put the whole line in the first
> variable,
> > so what am I missing.
> > 
> > Thanks and best regards,
> > 
> > Raoul.
> > 
> > --
> > Censorship cannot eliminate evil, it can only kill freedom.
> > 
> > 
> > --
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> > <http://learn.perl.org/> <http://learn.perl.org/first-response>
> > 
> 
> 
-- 
Censorship cannot eliminate evil, it can only kill freedom.


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
<http://learn.perl.org/> <http://learn.perl.org/first-response>


Reply via email to