Because this is Perl, There is more than one way to do it. So although you already have two working propositions, I'll add another version with the next keyword. Combined with loop labels and statement modifiers (postfix if, while etc...) they help make code that looks like plain old English. And it avoid adding another level to a block hierarchy with a if block.

use strict; use warnings; my $previous = ''; LINE: while(my $line = <DATA>) { # next LINE unless length $line >= 11; ## useless if you're absolu +tely sure that you can't have a shorter line # next LINE unless $line =~ m<\S>; ## Checking if the line isn +'t blank, same as above my $var = substr($line, 9, 2); next LINE if $var eq $previous; # with eq or ne instead of == or ! += this works even for hexadecimal values, or any string of two charac +ters # At this point, lines with the same number as the previous have b +een skipped $previous = $var; print $line; } __DATA__ AB000000026JHAHKDFK AB000000028JHKHKHKJ AB00000003033AFSFAS AB000000030HJHKH80J AB000000030LOIKJUJ8 AB0000000324446KJHK
AB000000026JHAHKDFK AB000000028JHKHKHKJ AB00000003033AFSFAS AB0000000324446KJHK


In reply to Re: Removing duplicates lines by Eily
in thread Removing duplicates lines by vihar

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.