---
title: "replace - wordleft"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/13941-replace-wordleft"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Jesper T"
published: "2002-01-20T01:43:00.000Z"
updated: "2002-01-22T16:39:00.000Z"
replies: 6
views: 219
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/13941-replace-wordleft"
---

# replace - wordleft

## #1 — Jesper T, 2002-01-20T01:43Z

Hej jag skulle vilja kombinera dessa saker i en och samma presentation, hur gör man detta lättast månne??

```

Function WordLeft(strText, intNoOfWords)	
Dim arrText, strippedText, I	
arrText = Split(strText, " ")	
If UBound(arrText) => intNoOfWords Then		
For I = 0 To (intNoOfWords - 1)			
If i = (intNoOfWords - 1) Then 				
strippedText = strippedText & arrText(i) & "..."			
Else				
strippedText = strippedText & arrText(i) & " "			
End if		
Next	
Else		
strippedText = strText	
End If	
WordLeft = strippedText
End Function
%>
```

presenteras med:

```
<%Response.write wordleft(RS("text"),5)
```

Vill kombinera med:

```
      <%response.write replace(rs("text"),Query ,"<font style='BACKGROUND-COLOR: #33CCFF'>" & Query & "</font>",1,-1,vbTextCompare)%>
```

MVH

//Jesper
Detta svar fick jag ifrån Erik Juhlin:

```
<%response.write wordleft(replace(rs("text"),Query ,"<font style='BACKGROUND-COLOR: #33CCFF'>" & Query & "</font>",1,-1,vbTextCompare))%>
```

eller ännu bättre:

```

Function QueryMarked(str, sQuery)
replace(str, sQuery , "<font style='BACKGROUND-COLOR: #33CCFF'>" & Query & "</font>", 1, -1,vbTextCompare)
End Function
response.write wordleft(QueryMarked(rs("text"),Query))'************ RAD 151 ******
```

MEN DÅ DYKER DETTA UPP:
Microsoft VBScript compilation error '800a03ea' 
Syntax error 

/sok/search.asp, line 151 

Function QueryMarked(str, sQuery)
^
Står det då!
Det som inte heller finns med i koden är ju siffran som anger meningens längd i ord.

Alltså:

```

<%Response.write wordleft(RS("text"),5)'********* 5=meningens längd i ord *************
```

MVH
//Jesper

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

## #2 — @nders, 2002-01-20T10:31Z

Hur ser koden ut runt funktionen QueryMarked? 

Du har den inte i en loop eller så?

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

## #3 — Jesper T, 2002-01-20T20:19Z

Jo, såklart den har en loop
Och skriver jag wordleft respektive replace var och en för sig funkar detta finfint!
Problemet är när du lägger ihop dem.
/Jesper

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

## #4 — @nders, 2002-01-20T20:24Z

Du kan inte ha *funktionen* i en loop. Funktionen lägger du utanför, och kallet till funktionen har du i loopen.

Mvh,

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

## #5 — Jesper T, 2002-01-20T20:59Z

Nej, detta ligger i loopen (funkar bra)

```
<%response.write replace(rs("text"),Query ,"<font style='BACKGROUND-COLOR: #33CCFF'>" & Query & "</font>",1,-1,vbTextCompare)%>
```

Men jag vill också lägga till:

```
<%Response.write wordleft(RS("text"),5)%>
```

så att texten både kortas av och markeras med sökt ord.
Alltså, båda fungerar separat i loopen men inte tillsammans.

MVH Jesper

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

## #6 — solbulle, 2002-01-22T13:44Z

Hm...

```
<%response.write replace(wordleft(RS("text"),5)
,Query ,"<font style='BACKGROUND-COLOR: #33CCFF'>" & Query & "</font>",1,-1,vbTextCompare)%>
```

Eller har jag missat något?

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

## #7 — Jesper T, 2002-01-22T16:39Z

Äh, jag gjorde så här istället:

```
<%response.write replace(left(rs("description"),70),Query ,"<font style='BACKGROUND-COLOR: #33CCFF'>" & Query & "</font>",1,-1,vbTextCompare)&"..."%>
```

Det löste också mitt strul med att kortare meningar inte syntes i wordleftvarianten. Ooops, här blir det visst ett annat problem....gissa!
Tack ändå!
;)

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/13941-replace-wordleft
