#!/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]
In reply to Re^3: Matches but not substituting
by Anonymous Monk
in thread Matches but not substituting
by seaver
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |