---
title: "Problem med Replace..."
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/69469-problem-med-replace"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Macce"
published: "2003-02-26T10:00:42.000Z"
updated: "2003-03-04T17:32:57.000Z"
replies: 14
views: 535
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/69469-problem-med-replace"
---

# Problem med Replace...

## #1 — Macce, 2003-02-26T10:00Z

I mitt forum så vill jag hindra att en användare 
håller ner \[enter\] och får massor av radbrytningar
och sabbar designen...

Om jag kör koden nedan så vill jag att den även ska 
förkorta resultatet av operationen. hoppas ni förstår vad jag menar.

Jag skulle helst vilja ha en funktion som tillåter max två radbrytningar i en följd, nån som har idéer på hur man kan lösa detta.

```
replace(strMess,VbCrlf&VbCrlf&VbCrlf,VbCrlf&VbCrlf)
```

Är det RegExp som gäller ?

mvh

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

## #2 — OveRRidE, 2003-02-26T10:03Z

Jag vet inte varför jag inte ser nödvändigheten i en sådan spärr. Enterslag är för mig en av de saker jag saknar på många ställen där man skriver i text i t.ex. formulär och liknande. Att begränsa detta känns mest som ett kontrollbegär. ;)

Sätt en rimlig gräns för hur många tecken fältet får innehålla istället.

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

## #3 — Macce, 2003-02-26T10:07Z

ja, du kanske har rätt :)

> Sätt en rimlig gräns för hur många tecken fältet får innehålla istället.

Har jag redan ;)

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

## #4 — Engine^, 2003-02-26T10:07Z

RegExp är säkert det smidigaste sättet att lösa det på.

Annars får du mha InStr() och InStrRev() söka efter förekomster av *VbCrLf&VbCrLf&VbCrLf*, kolla antal och strula... usch... kör med RegExp. ;)

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

## #5 — Macce, 2003-02-26T10:12Z

Har inte satt mig in i "RegExp" kanske dags för det, 
men OveRRidE har kanske rätt om mitt kontrollbegär... :)

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

## #6 — OveRRidE, 2003-02-26T10:18Z

Gör inte misstaget som alla andra gör bara, sitter och bygger in femhundrasjuttiotvå funktioner för smilies, enterslag, mellanslag, 'spamskydd' och diverse längdbegränsningar men totalt glömmer bort det viktigaste tecknet av dem alla; apostrofen. En sådan med fel databas och både du och din applikation är lika säkra som en vattendamm tillverkad av papier maché.

Talar av erfarenhet. :OO

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

## #7 — Macce, 2003-02-26T10:22Z

Tack för omtanken, men apostrofen och pipe-tecknet är skyddat.:)

Jag tillåter faktiskt html, är det OK ?

Ingen säkerhetsrisk bara "Sabba"-risk...

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

## #8 — OveRRidE, 2003-02-26T10:30Z

iframe-taggen är ju lite halvskoj i det läget. 

```
<iframe src="http://www.nissesporr.com"></iframe>
```

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

## #9 — Macce, 2003-02-26T10:35Z

hmm, då kör vi:

```
replace(strMess,"iframe","")
replace(strMess,"src","")
```

Fler förslag ?

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

## #10 — OveRRidE, 2003-02-26T10:44Z

Svart eller vitt, brukar jag köra med. Alltså HTMLencode eller inte.

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

## #11 — Macce, 2003-02-26T10:51Z

Oki, jag gör så här:

Först "HtmlEncode",längdbegränsning,tar bort pipe samt apostrof och sen sparar till databas.

vid presentation: replace(strMess,VbCrlf,"\<br\>") och smiley-kod

Det kanske är "lagom" kontrollbehov ;)

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

## #12 — Kermit, 2003-03-04T15:53Z

En stilla undran från en nybörjare...
Vad menas med "pipe" och "apostrof" ?

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

## #13 — @nders, 2003-03-04T15:56Z

Välkommen hit! :)

Pipe-tecknet : \|
Apostrof: '

Apostrof används för att omsluta strängar i SQL, men varför man ska se till att kasta bort tecknet \| har jag aldrig förstått. Någon med större visdom än vänstertecknad är mer än välkommen att upplysa. :)

Mvh

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

## #14 — niko, 2003-03-04T16:34Z

Pipe-tecknet används i Unix/Linux/PHP/Perl (och DOS) för redirecta outputen från ett program in i ett annat. 

Elaka människor har ibland lyckats maila iväg innehållet i lösenordsfiler genom att skriva (ungefär): 

```
;cat /etc/passwd | sendmail ..
```

i webformulär. I Windows och ASP är det inte lika aktuellt eftersom det inte finns några *system*, och *exec*\-kommandon.

I VBScript är det kanske ungefär lika smart som att skriva:

```
Set Shell = Server.CreateObject("WScript.Shell") 
Shell.Run sMittKommando & request.form("whatever")
```

 .. utan att kolla innehållet i *request.form("whatever")*. 

Det har alltså inte så mycket med SQL att göra ..

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

## #15 — @nders, 2003-03-04T17:32Z

Tack, mäster niko!

Mvh

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/69469-problem-med-replace
