Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on May 7th, 2012  |  syntax: None  |  size: 1.10 KB  |  hits: 10  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. #!/usr/bin/perl
  2.  
  3. my @data;
  4. my @data2;
  5. my %dupe;
  6. my $d2cnt;
  7. my @dupecp;
  8.  
  9. open(F, "cplist.csv");
  10. @data = <F>;
  11. chomp(@data);
  12. close(F);
  13.  
  14. @data2 = @data;
  15. for(my $x = 0; $x < @data; $x++) {
  16.   my ($ocpref, $ocpname) = split(/,/, $data[$x], 2);
  17.   print "$ocpref $ocpname\n";
  18.   $d2cnt = @data2;
  19.   $ocpnamechk = $ocpname;
  20.   $ocpnamechk =~ s/[^A-Z0-9]//gi;
  21.   print "NAME: $ocpname $ocpnamechk\n";
  22.   print "$d2cnt\n";
  23.   undef @dupecp;
  24.   for(my $y = 0; $y < $d2cnt; $y++) {
  25.     my ($ccpref, $ccpname) = split(/,/, $data[$y], 2);
  26.     $ccpnamechk = $ccpname;
  27.     $ccpnamechk =~ s/[^A-Z0-9]//gi;
  28.     if ($ocpref == $ccpref) {
  29.       splice(@data2, $y, 1);
  30.       $d2cnt = @data2;
  31.       print "AFTER DELETE $d2cnt\n";
  32.       next;
  33.     }
  34.     if (lc($ccpnamechk) eq lc($ocpnamechk)) {
  35.       print "MATCH $ocpref $ccpref\n";
  36.       print "MATCH $ccpname $ocpname\n";
  37.       print "MATCH $ccpnamechk $ocpnamechk\n";
  38.       splice(@data2, $y, 1);
  39.       $d2cnt = @data2;
  40.       print "AFTER DELETE $d2cnt\n";
  41.       push(@dupecp, $ccpref);
  42.     }
  43.   }
  44.   if (@dupecp > 0) {
  45.    $dupe{$ocpref} = join(':', @dupecp);
  46.    print "$ocpref => $dupe{$ocpref}\n";
  47.   }
  48. }