Avatar billede desi-mus Nybegynder
15. juni 2006 - 20:39 Der er 4 kommentarer og
1 løsning

Split tekst efter ca. 100 tegn ved et mellemrum.

Hej Eksperten
Mit problem er at jeg skal splitte en tekst-string op så den ikke er mere end 100 tegn lang, men den skal splittes ved et mellemrum, og ikke bare midt i et ord.
Det er til et nyhedssystem, hvor der efter 100 tegn skal stå ”læs mere her”.

Hvordan løses dette?
Avatar billede eagleeye Praktikant
15. juni 2006 - 20:50 #1
Eks:


str = "en lang teskt fra databassen... bla. bla"
i = len(str)
if i > 100 then
  i = inStrRev(str, " ", i)
  if i = 0 then i = 100
  str = left(str, i) & "..." & "<a href=""xxxx.asp?id=yyy"">læs mere her</a>"
end if

response.write str
Avatar billede desi-mus Nybegynder
15. juni 2006 - 21:06 #2
Eagleeye: Det virker ikke. Når jeg skriver en tekst på 300 tegn kommer der 284 tegn ud på skærmen, og ikke kun de 100...
Avatar billede eagleeye Praktikant
15. juni 2006 - 21:18 #3
Arh prøv lige at rette :

  i = inStrRev(str, " ", i)


Til denne så den starter søgningen ved karakter nr. 100 og ikke ved sidste karakter:

  i = inStrRev(str, " ", 100)
Avatar billede desi-mus Nybegynder
15. juni 2006 - 21:21 #4
Takker :-) Nu virker det og jeg har lært en ny ASP-funktion.
Avatar billede eagleeye Praktikant
15. juni 2006 - 21:22 #5
Tak for point :)

det kan evt. rettes til dette så max længden ligger i en variable så man let kan ændre den på et tidspunkt uden at skulle rette det 3 - 4 steder i koden



str = "en lang teskt fra databassen... bla. bla"

MaxKarakter = 100
i = len(str)
if i > MaxKarakter then
  i = inStrRev(str, " ", MaxKarakter)
  if i = 0 then i = MaxKarakter
  str = left(str, i) & "..." & "<a href=""xxxx.asp?id=yyy"">læs mere her</a>"
end if

response.write str
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester