my $newcontent = _translateLinks2($initcontent);
#
sub _translateLinks2 {
my $content = shift;
my @all = split(/ /,$content);
my $skip = 0;
my @trans;
for my $a (@all) {
# print "{ $a }\n";
if ($a =~ m#<a#i) {
$skip = 1;
}
# print "skip : $skip\n";
if ($skip == 0 && $a =~ m#http#i) {
if ($a =~ m#^(\n|\r)#) {
$a =~ s/\n|\r//gis;
$a = qq(\n<a href="$a">$a</a>);
}
elsif ($a =~ m#(\n|\r)$#) {
$a =~ s/\n|\r//gis;
$a = qq(<a href="$a">$a</a>\n);
}
else {
$a = qq(<a href="$a">$a</a>);
}
}
elsif ($skip == 0 && $a =~ m#\w+\.com|\w+\.net|\w+\.org|\w+\.gov#i
+) {
if ($a =~ m#^(\n|\r)#) {
$a =~ s/\n|\r//gis;
$a = qq(\n<a href="http://$a">http://$a</a>);
}
elsif ($a =~ m#(\n|\r)$#) {
$a =~ s/\n|\r//gis;
$a = qq(<a href="http://$a">http://$a</a>\n);
}
else {
$a = qq(<a href="http://$a">http://$a</a>);
}
}
# print "[[ $a ]]\n";
if ($a =~ m#<\/a>#i) {
$skip = 0;
}
push (@trans,$a);
}
my $translated = join (' ',@trans);
return $translated;
}