Perl

NAVIGATION
CATEGORIES
REFERRENCE
LINKS
  • Omitting duplicate IDs in output file

    0 answers - 1860 bytes - related search similar search Add To My Delicious Add To My Stumble Upon Add To My Google Mark Add To My Facebook Add To My Digg Add To My Reddit

    I need some help. I can't figure out how to omit duplicate IDs in the output file.
    #!/usr/local/bin/perl
    require 5.000;
    my %tags = ();
    my $input = $ARGV[0];
    my $output = $ARGV[1];
    open (FILE, "< $input") or die "cannot open $input: $!\n";
    open (UTPUTFILE, "$output") or die "cannot open $input: $!\n";
    chomp(my @lines = <FILE>);
    my @chars = map {
    my ($id) = m{<a id=(\w+)>};
    [ $_, $id, scalar $id =~ /^\d+$/ ];
    } @lines;
    my @sorted_chars = sort {
    $b->[2] <=$a->[2]
    or
    ($a->[2] ? $a->[1] <=$b->[1] : $a->[1] cmp $b->[1])
    or
    $a->[0] cmp $b->[0]
    } @chars;
    my @result = map { $[0] } @sorted_chars;
    print UTPUTFILE "$_\n" for @result;
    close UTPUTFILE;
    close FILE;
    IN.SRT
    <a id=ab>
    <a id=1>
    <a id=ab>
    <a id=15>
    <a id=2>
    <a id=fa>
    <a id=5>
    <a id=13>
    <a id=20>
    <a id=fa>
    <a id=3>
    <a id=7>
    <a id=5>
    <a id=21>
    <a id=2>
    <a id=bc>
    <a id=22>
    <a id=15>
    <a id=fa>
    <a id=25>
    <a id=8>
    <a id=24>
    <a id=2>
    <a id=ab>
    <a id=16>
    <a id=15>
    <a id=bc>
    UT.SRT
    <a id=1>
    <a id=2>
    <a id=2>
    <a id=2>
    <a id=3>
    <a id=5>
    <a id=5>
    <a id=7>
    <a id=8>
    <a id=13>
    <a id=15>
    <a id=15>
    <a id=15>
    <a id=16>
    <a id=20>
    <a id=21>
    <a id=22>
    <a id=24>
    <a id=25>
    <a id=ab>
    <a id=ab>
    <a id=ab>
    <a id=bc>
    <a id=bc>
    <a id=fa>
    <a id=fa>
    <a id=fa>

Re: Omitting duplicate IDs in output file


max 4000 letters.
Your nickname that display:
In order to stop the spam: 1 + 0 =
QUESTION ON "Perl"

EMSDN.COM