If you know what is directly before the information you need, try changing the input record separator. Any time you think "unique", you most likely will want a hash.
#!/usr/bin/perl use warnings; use strict; $/ = 'authDataAlias='; my %no_dupes; foreach my $line (<DATA>) { if ($line =~ m/^"(.*?_DM\S+)"/i) { $no_dupes{$1} = 0; } } print "$_\n" for keys %no_dupes; __DATA__ <factories xmi:type="resources.jdbc:CMPConnectorFactory" xmi:id="CMPCo +nnectorFactory_1195273978412" name="dataSource" authMechanismPreferen +ce="BASIC_PASSWORD" authDataAlias="cell-tstc-65_DM/userQ" connectionD +efinition="ConnectionDefinition_1054132487569" cmpDatasource="DataSou +rce_1195273954323"><factories xmi:type="resources.jdbc:CMPConnectorFa +ctory" xmi:id="CMPConnectorFactory_1195273978412" name="dataSource" a +uthMechanismPreference="BASIC_PASSWORD" authDataAlias="cell-tstc-65_D +M/userQ" connectionDefinition="ConnectionDefinition_1054132487569" cm +pDatasource="DataSource_1195273954323"><factories xmi:type="resources +.jdbc:CMPConnectorFactory" xmi:id="CMPConnectorFactory_1195273978412" + name="dataSource" authMechanismPreference="BASIC_PASSWORD" authDataA +lias="cell-tstc-65_DM/userF" connectionDefinition="ConnectionDefiniti +on_1054132487569" cmpDatasource="DataSource_1195273954323"> <factories xmi:type="resources.jdbc:CMPConnectorFactory" xmi:id="CMPCo +nnectorFactory_1195273978412" name="dataSource" authMechanismPreferen +ce="BASIC_PASSWORD" authDataAlias="node-tstc-65_DM/userF" connectionD +efinition="ConnectionDefinition_1054132487569" cmpDatasource="DataSou +rce_1195273954323">
In reply to Re: Need Some help with finding a word in a file
by thundergnat
in thread Need Some help with finding a word in a file
by was6guy
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |