Aha, you anchor using $ which makes it fail
#!/usr/bin/perl --
use strict;
use warnings;
my $Text="LOC100282561 [Source:RefSeq peptide;Acc:NP_001148941]";
my %VisitedLinks=();
#Searching for NCBI Entrez Gene IDs
+
+
$_ = $Text;
my @OriginalArray = /(LOC\d{9})/g;
use DDS; Dump( \@OriginalArray );
for (my $i=0; $i < @OriginalArray; $i++) {
if (!defined($VisitedLinks{$OriginalArray[$i]})) {
$VisitedLinks{$OriginalArray[$i]} = 1;
my $Link = EntrezGeneLinks($OriginalArray[$i]);
my $Find = $OriginalArray[$i];
use DDS; Dump( $Link, $Find, $Text );
#~ $Text =~ s/$Find$/$Link/g;
$Text =~ s/$Find/$Link/g;
use DDS; Dump( $Text, );
}
}
print $Text,"\n";
sub EntrezGeneLinks {
my ($ID) = @_;
return '<a href="http://www.ncbi.nlm.nih.gov/sites/entrez?db=gene&
+term='.$ID.'" target="_blank">'.$ID.'</a>';
}
__END__
$ARRAY1 = [ 'LOC100282561' ];
$VAR1 = '<a href="http://www.ncbi.nlm.nih.gov/sites/entrez?db=gene&ter
+m=LOC100282561" target="_blank">LOC100282561</a>';
$VAR2 = 'LOC100282561';
$VAR3 = 'LOC100282561 [Source:RefSeq peptide;Acc:NP_001148941]';
$VAR1 = '<a href="http://www.ncbi.nlm.nih.gov/sites/entrez?db=gene&ter
+m=LOC100282561" target="_blank">LOC100282561</a> [Source:RefSeq pept
+ide;Acc:NP_001148941]';
<a href="http://www.ncbi.nlm.nih.gov/sites/entrez?db=gene&term=LOC1002
+82561" target="_blank">LOC100282561</a> [Source:RefSeq peptide;Acc:N
+P_001148941]
|