Title: Message
 Thanks. It worked.
-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Sent: Thursday, June 02, 2005 10:10 AM
To: AITHA, BHEEMSEN (SBCSI)
Subject: Re: [Perl-unix-users] split on array


I think it's what you're splitting on. "\s*" means zero-or-more spaces. Try using "\s+", which is one-or-more spaces--my guess, that's what you meant.

HTH,

Deane



"AITHA, BHEEMSEN \(SBCSI\)" <[EMAIL PROTECTED]>
Sent by: [EMAIL PROTECTED]

06/02/2005 11:36

       
        To:        "$Bill Luebkert" <[EMAIL PROTECTED]>, <perl-unix-users@listserv.ActiveState.com>
        cc:        
        Subject:        [Perl-unix-users] split on array



Hi,

I am not able to split a string and build an array. I am reading the
lines from a file. I could not understand what I am doing wrong here.

My code is below:

#!/usr/bin/perl -w
#
------------------------------------------------------------------------
------
my $spool_file="gwcd";
my $gwcd_file="/appl/loopqual/ait/log/$spool_file.lst";
my ($wc_cd,$ind,$dm1,$dm2,$row_ct,$row);
my (@wc,@source_ind,@dummy1,@dummy2,@wc_row_ct,@data);

 print "open $gwcd_file\n";
 open(GWCDIN, "< $gwcd_file");  #|| die "can't open $gwcd_file: $!";
 if ($? == 0)
 {
   print "open successful\n";
   while (<GWCDIN>)
   {
     $row = $_;
    ( $wc_cd, $ind, $dm1, $row_ct, $dm2 ) = split(/\s*/,$row);
    push(@wc,$wc_cd);
    push(@source_ind,$ind);
    push(@wc_row_ct,$row_ct);
   }  # end while

   print "$wc[10]\n";
   print "$wc_row_ct[10]\n";
 }
close GWCDIN;

The input file is below:

313222                                   A 12/02/2003      44453
2
630620                                   A 02/28/2005     826240
2
847464                                   A 02/28/2005      29155
2
847576                                   A 02/28/2005      14147
2
847286                                   A 02/28/2005       5274
2
630323                                   A 03/01/2005     785867
2
708387                                   A 03/01/2005     725906
2
815932                                   A 03/01/2005     644998
2
616249                                   A 03/01/2005     620161
2
513422                                   A 03/01/2005     488744
2
708335                                   A 03/01/2005     471453
2
419422                                   A 03/01/2005     469839
2
419865                                   A 03/01/2005     389593
2

When I print, I was expecting the program to print 708335 and 725906 on
two separate lines. But the program is printing 7 and 3 on two separate
lines.

Any help is really appreciated.

Thanx..
-Bheem

_______________________________________________
Perl-Unix-Users mailing list
Perl-Unix-Users@listserv.ActiveState.com
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs


_______________________________________________
Perl-Unix-Users mailing list
Perl-Unix-Users@listserv.ActiveState.com
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs

Reply via email to