---
title: "göra länkar klickbara"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/135048-göra-länkar-klickbara"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "WebbisNet"
published: "2005-09-30T18:54:58.000Z"
updated: "2005-12-21T06:57:38.000Z"
replies: 19
views: 1149
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/135048-göra-länkar-klickbara"
---

# göra länkar klickbara

## #1 — WebbisNet, 2005-09-30T18:54Z

hur gör jag om denna kod för att göra ex en webadress klickbar

```
<%
sText = replace(gbMessage,"<","&nbsp;")
sText = replace(gbMessage,">","&nbsp;")
sText = replace(makeHtml(gbMessage),vbCrLf,"<br>")
Response.Write sText
%>
```

Permalänk: https://www.webforum.nu/p/135048

## #2 — emission, 2005-09-30T22:02Z

<http://www.webforum.nu/showthread.php?p=65125#post65125>

Permalänk: https://www.webforum.nu/p/1680078

## #3 — SB, 2005-10-01T07:00Z

Denna funktion brukar jag använda med ASP. Funkar bra.

```
Function convertLink(ByVal strText)
 Dim mDelimit
 Dim re
 mDelimit = Chr(0)
 Set re = New RegExp
 re.Global = True
 re.IgnoreCase = true

 re.Pattern = "(\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+)"
 strText = re.Replace(strText, "<a href=""mailto" & mDelimit & ":$1"">$1</a>")

 re.Pattern = "(http://|https://|ftp://|mailto:)(\S)(\S+)"
 strText = re.Replace(strText, "<a href=""$1$2" & mDelimit & "$3"" target=""_blank"">$2" & mDelimit & "$3</a>")

 re.Pattern = "(www\.(\S)(\S+))"
 strText = re.Replace(strText, "<a href=""http://$1"" target=""_blank"">$1</a>")
 strText = Replace(strText, mDelimit, "")

 convertLink=strText
End Function
```

Permalänk: https://www.webforum.nu/p/1680120

## #4 — WebbisNet, 2005-10-01T11:50Z

> **SB skrev:**
>
> Denna funktion brukar jag använda med ASP. Funkar bra.
> 
>
>
> ```
> Function convertLink(ByVal strText)
>  Dim mDelimit
>  Dim re
>  mDelimit = Chr(0)
>  Set re = New RegExp
>  re.Global = True
>  re.IgnoreCase = true
> 
>  re.Pattern = "(\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+)"
>  strText = re.Replace(strText, "<a href=""mailto" & mDelimit & ":$1"">$1</a>")
> 
>  re.Pattern = "(http://|https://|ftp://|mailto:)(\S)(\S+)"
>  strText = re.Replace(strText, "<a href=""$1$2" & mDelimit & "$3"" target=""_blank"">$2" & mDelimit & "$3</a>")
> 
>  re.Pattern = "(www\.(\S)(\S+))"
>  strText = re.Replace(strText, "<a href=""http://$1"" target=""_blank"">$1</a>")
>  strText = Replace(strText, mDelimit, "")
> 
>  convertLink=strText
> End Function
> ```

Hur brukar du kalla på den, fungerar inte med 

```
sText = convertLink(showAll("klotterText"))
```

Permalänk: https://www.webforum.nu/p/1680192

## #5 — @nders, 2005-10-01T12:44Z

Funktionen heter ju inte strText.

Permalänk: https://www.webforum.nu/p/1680211

## #6 — WebbisNet, 2005-10-01T12:54Z

sText = convertLink(showAll("klotterText")) borde ju funka då

Permalänk: https://www.webforum.nu/p/1680214

## #7 — emission, 2005-10-01T23:07Z

Kul att se att den gamla funktionen kunde komma till pass igen :)

Permalänk: https://www.webforum.nu/p/1680395

## #8 — WebbisNet, 2005-10-02T15:26Z

hade bara lagt funktionen på fel ställe, funkar fint nu

Permalänk: https://www.webforum.nu/p/1680629

## #9 — ptr_lks, 2005-12-19T11:49Z

> **emission skrev:**
>
> Kul att se att den gamla funktionen kunde komma till pass igen :)

vilken gammal funktion  :stud

Permalänk: https://www.webforum.nu/p/1730414

## #10 — emission, 2005-12-19T11:59Z

> **ptr_lks skrev:**
>
> vilken gammal funktion  :stud

Om du läser tråden så ser du nog.

Permalänk: https://www.webforum.nu/p/1730416

## #11 — ptr_lks, 2005-12-19T14:15Z

> **SB skrev:**
>
> Denna funktion brukar jag använda med ASP. Funkar bra.
> 
>
>
> ```
> Function convertLink(ByVal strText)
>  Dim mDelimit
>  Dim re
>  mDelimit = Chr(0)
>  Set re = New RegExp
>  re.Global = True
>  re.IgnoreCase = true
> 
>  re.Pattern = "(\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+)"
>  strText = re.Replace(strText, "<a href=""mailto" & mDelimit & ":$1"">$1</a>")
> 
>  re.Pattern = "(http://|https://|ftp://|mailto:)(\S)(\S+)"
>  strText = re.Replace(strText, "<a href=""$1$2" & mDelimit & "$3"" target=""_blank"">$2" & mDelimit & "$3</a>")
> 
>  re.Pattern = "(www\.(\S)(\S+))"
>  strText = re.Replace(strText, "<a href=""http://$1"" target=""_blank"">$1</a>")
>  strText = Replace(strText, mDelimit, "")
> 
>  convertLink=strText
> End Function
> ```

skulle man/vi kunna få lite kodförklaringar?

Permalänk: https://www.webforum.nu/p/1730467

## #12 — emission, 2005-12-19T16:53Z

> **ptr_lks skrev:**
>
> skulle man/vi kunna få lite kodförklaringar?

Visst

```
Function convertLink(ByVal strText)
 Dim mDelimit
 Dim re
 mDelimit = Chr(0)
 Set re = New RegExp
 re.Global = True
 re.IgnoreCase = true

 re.Pattern = "(\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+)"
 strText = re.Replace(strText, "<a href=""mailto" & mDelimit & ":$1"">$1</a>")
[red]'Matchar på mailadresser (mönstret är lite kryptiskt, men det handlar om att matcha på något@något.toppdomän, där "något" är giltiga adresstecken. 
'Stoppar dessutom in chr(0) (mDelimit) i ersättningen, så att de utbytta adresserna inte hittas av nedanstående matchning[/red]

 re.Pattern = "(http://|https://|ftp://|mailto:)(\S)(\S+)"
 strText = re.Replace(strText, "<a href=""$1$2" & mDelimit & "$3"" target=""_blank"">$2" & mDelimit & "$3</a>")
[red]'Matchar på vad som helst som föregås av en protokoll-spec. 
'Stoppar in chr(0) efter första tecknet i själva adressen, så redan utbytta webbadresser inte hittas av nedanstående matchning

[/red]

 re.Pattern = "(www\.(\S)(\S+))"
 strText = re.Replace(strText, "<a href=""http://$1"" target=""_blank"">$1</a>")
[red]'Matchar alla webbadresser som börjar på "www". [/red]

 strText = Replace(strText, mDelimit, "")
[red]'Rensar bort alla chr(0). [/red]
 convertLink=strText
End Function
```

Permalänk: https://www.webforum.nu/p/1730537

## #13 — ptr_lks, 2005-12-20T09:09Z

Hej har svårt för att använda mig utav koder som jag inte förstår, därför tänkte jag terrorisera er med ytterligare frågor

> re.Pattern = "(\\w+((-\\w+)\|(\\.\\w+))\*\\@\[A-Za-z0-9\]+((\\.\|-)\[A-Za-z0-9\]+)\*\\.\[A-Za-z0-9\]+)"
>  strText = re.Replace(strText, "\<a href=""mailto" & mDelimit & ":$1""\>$1\</a\>")

1. parantesen skall gruppera
2. > \\.

    \= punkt (.)
3. > \\w

    träffar vilket ord som helst = \[a-zA-Z_0-9\]
4. i enlighet med ovan så borde alltså 

   > \[A-Za-z0-9\]

    kunna ersättas med 

   > \\w
5. vad betyder 

   > \-\\w+

 

> re.Pattern = "(http://\|https://\|ftp://\|mailto:)(\\S)(\\S+)"
>  strText = re.Replace(strText, "\<a href=""$1$2" & mDelimit & "$3"" target=""\_blank""\>$2" & mDelimit & "$3\</a\>")

Enligt webeye

> kan man komma åt vilken gruppering man vill med dess nummer och dollartecken

I enlighet med ovan borde:
$1 = första gruppering = http://
$2 = andra gruppering = https://
$3 = 3:e gruppering = ftp://
Om ovanstånde stämmer, så förstår jag itnte hur 

> \<a href=""$1$2" & mDelimit & "$3"" target=""\_blank""\>$2" & mDelimit & "$3\</a\>")

Kan appliceras på tex:

> Replace av <http://www.sl.se> till:
> \<a href="http://www.sl.se" target=""\_blank""\>sl\</a\>"

Permalänk: https://www.webforum.nu/p/1730891

## #14 — ptr_lks, 2005-12-20T10:29Z

eller är det så att med en "gruppering" menas i detta fallet allt som finns mellan parantesen?

Permalänk: https://www.webforum.nu/p/1730933

## #15 — emission, 2005-12-20T10:34Z

> **ptr_lks skrev:**
>
> eller är det så att med en "gruppering" menas i detta fallet allt som finns mellan parantesen?

Japp

Permalänk: https://www.webforum.nu/p/1730936

## #16 — ptr_lks, 2005-12-20T10:44Z

men i såfall

> re.Pattern = "(\\w+((-\\w+)\|(\\.\\w+))\*\\@\[A-Za-z0-9\]+((\\.\|-)\[A-Za-z0-9\]+)\*\\.\[A-Za-z0-9\]+)"
> strText = re.Replace(strText, "\<a href=""mailto" & mDelimit & ":$1""\>$1\</a\>")

har ju flera paranteser men ändå fungerar $1...
rent intuitivt skulle jag villja använda mig utav:... $1$2$3

Permalänk: https://www.webforum.nu/p/1730937

## #17 — emission, 2005-12-20T12:02Z

$1 är **hela** första grupperingen, i detta fall hela matchningen

Permalänk: https://www.webforum.nu/p/1730968

## #18 — ptr_lks, 2005-12-20T13:34Z

Just nu skriver jag

```
Response.Write  Replace(Smilies(rsGbok("Message")), vbCrLf, "<br>" & vbCrLf)
```

hur skall jag skriva om jag vill använda mig utav convertLink-funktionen?

Permalänk: https://www.webforum.nu/p/1731007

## #19 — emission, 2005-12-20T17:31Z

convertLink gör inget konstigt med strängen, så den kan du applicera när som helst.

Permalänk: https://www.webforum.nu/p/1731096

## #20 — ptr_lks, 2005-12-21T06:57Z

> **emission skrev:**
>
> convertLink gör inget konstigt med strängen, så den kan du applicera när som helst.

Så då kan jag alltså skriva:

```
Response.Write convetLink(Replace(Smilies(rsGbok("Message")), vbCrLf, "<br />" & vbCrLf))
```

Permalänk: https://www.webforum.nu/p/1731352

---

Tråden på webben: https://www.webforum.nu/amne/asp/135048-göra-länkar-klickbara
