I have a text string which comes from a form containing the article text in
a knowledgebase. Sometimes people enter http links in their text however
when they show on the webpage they do not show as hyperlinks, because
obviously they don't gave the link tags around them.

What I'd like is to manipulate this text string so that wherever there is
http in it it put's the link tags around it. So what I'm really asking is,
how can I convert this string:

And to get to the blah blah site please go to http://blah-blah.com and you
will find lots of blah blah there.

Into this:

And to get to the blah blah site please go to <a
href="http://blah-blah.com">http://blah-blah.com</a> and you will find lots
of blah blah there.

It needs to be versatile as they may enter more than one http link within
the text.

Any help appreciated!

Sergio.

Re: String Manipulation by Evertjan

Evertjan
Wed Jul 05 10:55:50 CDT 2006

Sergio Orrego wrote on 05 jul 2006 in
microsoft.public.inetserver.asp.general:

> I have a text string which comes from a form containing the article
> text in a knowledgebase. Sometimes people enter http links in their
> text however when they show on the webpage they do not show as
> hyperlinks, because obviously they don't gave the link tags around
> them.
>
> What I'd like is to manipulate this text string so that wherever there
> is http in it it put's the link tags around it. So what I'm really
> asking is, how can I convert this string:
>
> And to get to the blah blah site please go to http://blah-blah.com and
> you will find lots of blah blah there.
>
> Into this:
>
> And to get to the blah blah site please go to <a
> href="http://blah-blah.com">http://blah-blah.com</a> and you will find
> lots of blah blah there.
>
> It needs to be versatile as they may enter more than one http link
> within the text.

That is easy, find seperate words commencing with http:// and convert those
words to the requested string and replace.

But how can you access "their text" in serverside ASP?
Where is "their text" located?

Please show what you have done sofar in ASP, either vbs or js.


--
Evertjan.
The Netherlands.
(Please change the x'es to dots in my emailaddress)

Re: String Manipulation by Mike

Mike
Wed Jul 05 13:24:05 CDT 2006


Sergio Orrego wrote:
> I have a text string which comes from a form containing the article text in
> a knowledgebase. Sometimes people enter http links in their text however
> when they show on the webpage they do not show as hyperlinks, because
> obviously they don't gave the link tags around them.
>
> What I'd like is to manipulate this text string so that wherever there is
> http in it it put's the link tags around it. So what I'm really asking is,
> how can I convert this string:
>
> And to get to the blah blah site please go to http://blah-blah.com and you
> will find lots of blah blah there.
>
> Into this:
>
> And to get to the blah blah site please go to <a
> href="http://blah-blah.com">http://blah-blah.com</a> and you will find lots
> of blah blah there.
>
> It needs to be versatile as they may enter more than one http link within
> the text.
>
> Any help appreciated!
>

Try this pair of functions:

<%
function create_links(strText)
strText = " " & strText
strText = ereg_replace(strText, "(^|[\n ])([\w]+?://[^ ,""\s<]*)",
"$1<a href=""$2"" target=""_blank"">$2</a>")
strText = ereg_replace(strText, "(^|[\n ])((www|ftp)\.[^ ,""\s<]*)",
"$1<a href=""http://$2"" target=""_blank"">$2</a>")
strText = ereg_replace(strText, "(^|[\n
])([a-z0-9&\-_.]+?)@([\w\-]+\.([\w\-\.]+\.)*[\w]+)", "$1<a
href=""mailto:$2@$3"">$2@$3</a>")
strText = right(strText, len(strText)-1)
create_links = strText
end function

function ereg_replace(strOriginalString, strPattern, strReplacement)
' Function replaces pattern with replacement
dim objRegExp : set objRegExp = new RegExp
objRegExp.Pattern = strPattern
objRegExp.IgnoreCase = True
objRegExp.Global = True
ereg_replace = objRegExp.replace(strOriginalString, strReplacement)
set objRegExp = nothing
end function
%>

article_text = create_links(Request.Form("article_text"))

--
Mike Brind