---
title: "Avancerad replacefunktion?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/149785-avancerad-replacefunktion"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Kapten Haddock"
published: "2006-08-07T07:08:34.000Z"
updated: "2006-08-09T08:28:16.000Z"
replies: 5
views: 873
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/149785-avancerad-replacefunktion"
---

# Avancerad replacefunktion?

## #1 — Kapten Haddock, 2006-08-07T07:08Z

Kan man göra replace funktionen lite mera dynamisk? Jag skulle behöva en kod som klarar av att ta bort http:// och domännamnet från en adress oberoende av hur lång den är. Nånting som skulle börja med HTTP:// och sluta vid nästa "/" tecken.

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

## #2 — Travoni, 2006-08-07T07:22Z

Sök i forumet på regexp\* och använd ett liknande mönster: http://.+/

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

## #3 — Kapten Haddock, 2006-08-07T07:45Z

Jag får inte A eller Ö från regexp, helt bortkollrad blir jag.

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

## #4 — paddan, 2006-08-07T14:48Z

Skriv koden! så ska vi se!

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

## #5 — Kapten Haddock, 2006-08-08T07:16Z

Här är koden som jag tog från nån ASP sida och försökte modifiera, lade in den som 404 meddelande och skrev in en URL som inte skulle finnas, skulle detta funkat så skulle koden ha spottat ut nått som <https://www.nyurl.fi/blablabla/>

```
InitialString = Request.ServerVariables("QUERY_STRING")

Set RegularExpressionObject = New RegExp

With RegularExpressionObject
.Pattern = "http://.+/"
.IgnoreCase = True
.Global = True
End With

ReplacedString = RegularExpressionObject.Replace(InitialString, "www.nyurl.fi/")

Response.Write "Replaced " & InitialString & " with " & ReplacedString

Set RegularExpressionObject = nothing
```

 

Vad den spottar ut så är: 

> Replaced 404;<http://www.gammalurl.se/main/swe/default.asp> with 404;<https://www.nyurl.fi/default.asp>

Inte riktigt som planerat...

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

## #6 — Kapten Haddock, 2006-08-09T08:28Z

Fixat det själv, denna kod så byter alla domännamn oavsett längd och skickar vidare till en annan domän med samma path:

```
nDomain = "http://www.domain.fi"
urlPath = Request.ServerVariables("QUERY_STRING")

InitialString = urlPath

Set RegularExpressionObject = New RegExp

With RegularExpressionObject
.Pattern = "404;http://.+?/"
.IgnoreCase = True
.Global = True
End With

ReplacedString = RegularExpressionObject.Replace(InitialString, "/")

Set RegularExpressionObject = nothing

newURL = nDomain & ReplacedString
response.Redirect newURL
```

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/149785-avancerad-replacefunktion
