webForumDet fria alternativet

Slänga ut 300 ord

ASP

6 svar · 323 visningar · startad av SPinckney

Medlem sedan juli 2002104 inlägg
Frågan#1

Hejsan,

Hur slänger man ut 300 ord ur ett fält som innehåller tex en nyhet?

Jag vill alltså ha ut 300 ord på första sidan sen en läsmer knapp där man kan se hela nyheten. Men också att hela sista ordet ska följa med så den inte avbryter mitt i ett ord?

Medlem sedan apr. 20021 203 inlägg
#2

Jag hade gjort så här (finns kanske en bättre lösning):
Lägg in samtliga ord i en sträng.
Lägg in dem i en array genom att dela vid alla mellanslag ("").
Skriv sedan ut de tre hundra första värdena i arrayen.
Lägg till tre punkter.

:)

Medlem sedan sep. 20005 700 inlägg
#3

Hmm, detta kanske inte är så optimerat.

Dim arrWords, x, strText
arrWords = Split(RecSet("news"), " ")
x = 0
For Each word In arrWords
strText = strText & word & " "
x = x + 1
If x = 300 Then Exit For
Next
Response.Write strText

r) ändrade koden

Medlem sedan juni 20019 024 inlägg
Medlem sedan juli 2002104 inlägg
#5

Man tackar

Medlem sedan juli 2001434 inlägg
#6

Vet inte om detta är en Oracle lösning, men annars kan du skriva

select substr(table.field, 0, 300) as tjoho

0:an symboliserar att du startar på pos 0 och 300 att du slutar på 300... En substr(table.field, 100, 400) as tjoho ger alltså tecken 100 till 400... men som sagt, kanske oracle endast...

Medlem sedan juli 2002104 inlägg
#7

När jag kör den koden du skrev Gain


Dim arrWords, x, strText
arrWords = Split(RecSet("news"), " ")
x = 0
For Each word In arrWords
strText = strText & word & " "
x = x + 1
If x = 300 Then Exit For
Next
Response.Write strText

Och kör en Do Until Rs.news EOF

Så slänger den med Det första värdet i den andra posten och i den tredje posten slänger den med första och andra värdet.

TEx om jag har nyhet ett:

"Test av nyhet 1"

Sen har jag nyhet 2 som innehåller

"Test av nyhet 2"

Då blir Nyhet 2 såhär

"Test av nyhet 1 Test av nyhet 2"

och nyhet 3 blir

"Test av nyhet 1 Test av nyhet 2 Test av nyhet 3"

Jag måste alltså tömma strText varje gång den hoppar till nästa Recordset ?

256 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)