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;
}
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|