Opps.
Once you save my code to a file the syntax woiuld be:
perl mycode.pl input.txt output.txt
Below is what I get now when I run my code on the input.txt file. As you can
see its not sorting the way I like. It should sort like the OUTPUT.TXT file
inmy previsou email.
<tag id=1>Test.</tag>
<tag id=10ba>Test.</tag
<tag id=15xx>Test.</tag
<tag id=16ab>Test.</tag
<tag id=16bc>Test.</tag
<tag id=16ya>Test.</tag
<tag id=16yy>Test.</tag
<tag id=16zz>Test.</tag
<tag id=2>Test.</tag>
<tag id=3>Test.</tag>
<tag id=39a>Test.</tag>
<tag id=4>Test.</tag>
<tag id=40>Test.</tag>
<tag id=41>Test.</tag>
<tag id=45>Test.</tag>
<tag id=5>Test.</tag>
<tag id=50>Test.</tag>
<tag id=54>Test.</tag>
<tag id=5a>Test.</tag>
<tag id=5za>Test.</tag>
<tag id=6>Test.</tag>
<tag id=7>Test.</tag>
<tag id=8>Test.</tag>
<tag id=aa>Test.</tag>
<tag id=cc>Test..</tag>
<tag id=de>Test.</tag>
<tag id=ff>Test..</tag>
<tag id=zz>Test..</tag>
On Tue, 25 Jul 2006 21:32:26 -0400, macromedia wrote:
>Hi,
>I can't seem to get my script to sort properly. Below is my code along with a
>sample input.txt file. I also have what the output.txt file should look like.
>Also note any duplicate should be striped out
>which seems to work ok.
>Something is getting messed up when I have the numerials along with alpha etc.
>I can't seem to get the results of the OUTPUT.TXT file below.
><code>
>#!/usr/bin/perl -w
>require 5.000;
>use warnings;
>use strict;
>use POSIX;
>my %tags = ();
>my $input = $ARGV[0];
>my $output = $ARGV[1];
>open (FILE, "< $input") or die "cannot open $input: $!\n";
> while (my $tag = <FILE>) {
> $tag =~ m/<tag id=(\w+)>/;
> $tags{$1} = $tag;
> }
> open (NEWFILE, "> $output");
> foreach my $id ( map { $_->[0] }
> sort { $a->[0] cmp $b->[0] || $a->[7] <=> $b->[7] }
> map { [ $_, ( isdigit( $_ ) ? $_ : 0 ) ] }
> keys %tags )
> {
> print NEWFILE $tags{$id};
>close NEWFILE;
>close FILE;
></code>
>INPUT.TXT file
>------------------------
><tag id=1>Test.</tag>
><tag id=16ab>Test.</tag>
><tag id=aa>Test.</tag>
><tag id=16zz>Test.</tag>
><tag id=39a>Test.</tag>
><tag id=cc>Test.</tag>
><tag id=de>Test.</tag>
><tag id=16bc>Test.</tag>
><tag id=zz>Test..</tag>
><tag id=2>Test.</tag>
><tag id=3>Test.</tag>
><tag id=4>Test.</tag>
><tag id=5>Test.</tag>
><tag id=5a>Test.</tag>
><tag id=5za>Test.</tag>
><tag id=6>Test.</tag>
><tag id=40>Test.</tag>
><tag id=41>Test.</tag>
><tag id=40>Test.</tag>
><tag id=45>Test.</tag>
><tag id=10ba>Test.</tag>
><tag id=15xx>Test.</tag>
><tag id=cc>Test..</tag>
><tag id=ff>Test..</tag>
><tag id=50>Test.</tag>
><tag id=54>Test.</tag>
><tag id=7>Test.</tag>
><tag id=8>Test.</tag>
><tag id=16yy>Test.</tag>
><tag id=16ya>Test.</tag>
>OUTPUT.TXT file
>-----------------------------
><tag id=1>Test.</tag>
><tag id=2>Test.</tag>
><tag id=3>Test.</tag>
><tag id=4>Test.</tag>
><tag id=5>Test.</tag>
><tag id=5a>Test.</tag>
><tag id=5za>Test.</tag>
><tag id=6>Test.</tag>
><tag id=7>Test.</tag>
><tag id=8>Test.</tag>
><tag id=10ba>Test.</tag
><tag id=15xx>Test.</tag
><tag id=16ab>Test.</tag
><tag id=16bc>Test.</tag
><tag id=16ya>Test.</tag
><tag id=16yy>Test.</tag
><tag id=16zz>Test.</tag
><tag id=39a>Test.</tag>
><tag id=40>Test.</tag>
><tag id=41>Test.</tag>
><tag id=45>Test.</tag>
><tag id=50>Test.</tag>
><tag id=54>Test.</tag>
><tag id=aa>Test.</tag>
><tag id=cc>Test..</tag>
><tag id=de>Test.</tag>
><tag id=ff>Test..</tag>
><tag id=zz>Test..</tag>
>--
>To unsubscribe, e-mail: [EMAIL PROTECTED]
>For additional commands, e-mail: [EMAIL PROTECTED]
><http://learn.perl.org/> <http://learn.perl.org/first-response>