Avatar billede cygnet Praktikant
14. maj 2002 - 19:40 Der er 7 kommentarer og
2 løsninger

Deling af forlang ord

Hvordan gør jeg så hvis en person skriver 500 k'er efter hinanden for at gøre ens gæstebog tyk - at den så automatisk dele efter et bestemt antal tegn ?

Hvis du er tvivl om hvad jeg mener så kig http://www.kummunity.tk [gæstebogen]

/cygnet
Avatar billede keysersoze Ekspert
14. maj 2002 - 19:43 #1
jeg tror, at hvis der fandtes en løsning, så var den også indarbejdet på eksperten...

okkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk?
Avatar billede dyre Nybegynder
14. maj 2002 - 19:53 #2
det findes en måde hvordan kan jeg ikke huske men kan godt finde ud af det !!!
Avatar billede tjacob Juniormester
14. maj 2002 - 19:55 #3
Det gør der! Eksperten havde ikke dette problem før, men nu er det
her igen.

Der er to modeller der kunne anvendes:

1.) Lav det således at det felt hvori indlæggene skrives
    ikke har vandret scroll.

2.) Test indlægget før det bliver postet. F.eks kunne du
    indlæse det i en streng-variabel, og så teste denne for
    mellemrum. Hvis der ikke var et mellemrum efter f.eks.
    50 karakterer, ja så accepteres indlægget ikke.


/tjacob
Avatar billede keysersoze Ekspert
14. maj 2002 - 20:01 #4
jeg har aldrig set eksperten have løst dette problem - og jeg har trods alt været her et stykke tid
Avatar billede tjacob Juniormester
14. maj 2002 - 20:04 #5
-måske du har ret keyser..., jeg har muligvis bare ikke set det længe ;-)
Avatar billede cygnet Praktikant
14. maj 2002 - 20:13 #6
tjacob

Har du et eksempel på hvordan jeg tester dette ?
Avatar billede tjacob Juniormester
14. maj 2002 - 20:36 #7
NB: Alt dette er VB [script]. Hvordan du implementerer det, samt
den præcise syntaks må du selv rode med (det skal måske ind i en funktion osv):

Først indlæser du indlægget f.eks. i MyStr:

Dim i,a

For i = 1 To Len(MyStr)
    if Mid(Mystr,i,1) = " " Then a = 0      '*******
    a = a + 1
    if a > 50 Then
      Mid(Mystr,i,2) = Mid(Mystr,i,1) & " " 
      a = 0
    End If
Next

'*******
Denne If-sætning indsætter et mellemrum, hvis der har været 50 karakterer uden.
Du kunne erstatte den med :
If a > 50 Then
    MyStr = ""
    Exit For
End If
Den sletter strengen helt.


Til sidst indsætter du MyStr som dit indlæg igen.
Avatar billede tjacob Juniormester
14. maj 2002 - 20:42 #8
Det er ikke helt godt, da der bliver slettet en karakter,
-lige et øjeblik
Avatar billede tjacob Juniormester
14. maj 2002 - 20:50 #9
If sætningen i løkken skal være:

If a > 50 Then
    MyStr = Left(MyStr, i) & " " & Right(MyStr, Len(MyStr) - i)
    a = 0
End If
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