dear John that's what I want , thx
2006/3/30, John W. Krahn <[EMAIL PROTECTED]>: > > ÅÓ wrote: > > dear all , I'am trying to write a script to neaten files as follows: > > > > 1 : #!/usr/local/bin/perl > > 2 : > > 3 : while ($inputline = <STDIN>) { > > 4 : while ($inputline =~ /\b[A-Z]\S+/g) { > > 5 : $word = $&; > > 6 : $word =~ s/[;.,:-]$//; # remove punctuation > > 7 : for ($count = 1; $count <= @wordlist; > > 8 : $count++) { > > 9 : $found = 0; > > 10: if ($wordlist[$count-1] eq $word) { > > 11: $found = 1; > > 12: $wordcount[$count-1] += 1; > > 13: last; > > > > > > I want to clear the number and colon at the beginning of each line and > wirte > > a perl script > > > > #/usr/bin/perl -w > > use strict ; > > > > open MYFILE , "my.txt" ; > > my @array=<MYFILE>; > > my $count=0; > > my @temp; > > my $sum=0; > > > > for($count=0;$count lt @array ; $count++){ > > (my $number,$temp[$sum])=split (/:/,$array[$count]); > > print $number,"\n"; > > $sum++; > > } > > > > print @temp; > > > > > > but the output just three lines instead of 17 > > You probably want something like: > > #/usr/bin/perl -w > use strict ; > > open MYFILE , 'my.txt' or die "Cannot open 'my.txt' $!"; > > my @temp; > > while ( my $line = <MYFILE> ) { > ( my $number, $line ) = split /:/, $line, 2; > print "$number\n"; > push @temp, $line; > } > > print @temp; > > __END__ > > > John > -- > use Perl; > program > fulfillment > > -- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > <http://learn.perl.org/> <http://learn.perl.org/first-response> > > > -- Terry Pang