Ok, so it sounds like you have a single authAlias on any given line, but the same authAlias may be present multiple times in a given file. And you want a list of all the unique authAlias entries within the file. Given that assumption, what you want to do is store each authAlias in a hash within the loop, filtering out any that you're not interested in (either because they've already been found, or because they are not valid). So, with those changes, you end up with:
#!/usr/bin/perl
my $data_file = '/home/resources.xml';
my $data_out = '/home/out.log';
open DATA, "$data_file" or die "can't open $data_file $!";
open DATA_OUT, ">>$data_out";
my @array_of_data = <DATA>;
my %match_hash;
foreach my $line (@array_of_data){
if ($line =~ m/authDataAlias=(.*-.*-.*_DM)/i){
my $match = $1;
unless($match eq ""){
$match_hash{$match} = 1;
print DATA_OUT "$match\n" unless defined $match_hash{$match};
}
}
}
close (DATA);
close (DATA_OUT);
You could also pull the print statement out of the loop, so that you could open your output file, print all your gathered data, and then close your output file.
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: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.