Avatar billede kotelet Nybegynder
28. oktober 2001 - 02:46 Der er 8 kommentarer og
1 løsning

Opdel tekststreng i mindre dele

Jeg har en tekst på 430 tegn .. hvordan laver jeg et script der deler min tekst streng sådan, at hver indeling er på højest 150 tegn...

så f.eks.

strTekst

bliver til

strTekstDel1 på 150 tegn
strTekstDel2 på 150 tegn
strTekstDel3 på 130 tegn

Scriptet skal dele teksten uanset om der er mellemrum eller ej... Strengen skal splittes for hver 150\'ende tegn ...

????

/Kotelet
Avatar billede burningice Nybegynder
28. oktober 2001 - 02:51 #1
There u go

Function Wrap(ByVal Text, ByVal WrapChar, ByVal WrapAt)
        \' *****************************************************************************************************
        \' * WordWrap v1.2 - WordWraps a string off as near as possible to the specified max character amount  *
        \' * By Thomas Daugaard, December 11th, 2000.                                                          *
        \' *                                                                                                      *
        \' * Arguments: Text    : The string to wordwrap                                                      *
        \' *              WrapChar : A string specifying how/with what to wrap the string. Default is <br>          *
        \' *              WrapAt  : Numeric value specifying the maximum amount of characters allowed in a      *
        \' *                          string. Wraps backwards in the string to ensure that the max value is meet. *
        \' *                                                                                                      *
        \' *    Note: Arguments are passed By Value, not reference.                                                  *
        \' *****************************************************************************************************

        Text = Trim(CStr(Text))
        If Len(Text) =< WrapAt Or Len(Text) = 0 Or InStr(Text, \" \") = 0 Then Wrap = \"\" & Text: Exit Function
        If Len(WrapChar) = 0 Then WrapChar = \"<br>\"

        Do
            If Len(Text) < WrapAt Then strFinal = strFinal & Text: Exit Do
           
            strPart = Left(Text, WrapAt): intOff = WrapAt
            If Not Right(strPart, 1) = \" \" Then
                intOff = InStrRev(strPart, \" \")
                If intOff = 0 Then intOff = InStr(Text, WrapAt, \" \")
                If intOff = 0 Then strPart = Text
            End If
            strPart = Left(Text, intOff)
           
            Text = Right(Text, Len(Text) - Len(strPart))
            strFinal = strFinal & strPart & WrapChar
        Loop

        Wrap = strFinal
    End Function
Avatar billede kotelet Nybegynder
28. oktober 2001 - 11:27 #2
OK .. dert ser flot ud ... Men jeg tror jeg skal have et lille eksempel for at forstå hvordan man \"kalder\" funktionen ...  :-)

/Kotelet
Avatar billede burningice Nybegynder
28. oktober 2001 - 15:53 #3
hmmm.... well... oki, hvis du insisterer

Det functionen gør er at for hver x antal tegn indsætter et nyt tegn som du selv bestemmer. Det kan være f.eks. |, da det er et tegn som nok ikke indgår i teksten i forvejen. På den måde kan man lave et array, og så skrive de enkelte tekstdele ud på den måde... hvis du forstå ?!?!
Lad mig tage et eksempel

strTekst = sdjkshdfgækjdsfgdghdkfgdfgkhdfgh dkfjghd hdkjfghdkfgj dkfjghdkfjgh dfgdgjdf hdfgh djkg dfkgh dfkg dkfgdkfgjdfugihde rruhi hrui dfkjghdkfmnc,nb cvkbh ckvjbh dfiuo sdfkl k k k k kksxkfsieiu i jksjkfj jsjdfsk sksdksksksskeui  ui ii iesisekis kls dklsdkdsdsjk kse eieiokdsl klds kldsklds kldsdksklsdelskeiwieo ieeieslislldskkdsl klds is iisiesl lsdlkdsdks dskdskdskdskds kk dkds kds k dsks d

arrWrapped = Split(Wrap(strBesked, \"|\", 150), \"|\")

For i = 0 to UBound(arrWrapped)
    Response.Write <b>Tekst \"& i &\"</b><br><br>\"
    Response.Write arrWrapped(i) &\"<br>br>\"
Next
Avatar billede kotelet Nybegynder
28. oktober 2001 - 16:29 #4
Taaakkk :-)

Har du selv lavet scriptet?

/kotelet
Avatar billede burningice Nybegynder
28. oktober 2001 - 16:31 #5
DOH!

By Thomas Daugaard, December 11th, 2000.
Avatar billede kotelet Nybegynder
28. oktober 2001 - 16:32 #6
Jaja ... Jeg aner jo for hulen ikke hvad du hedder andet en \'Cyberfessor\' ...

Men tak alligevel
Avatar billede burningice Nybegynder
28. oktober 2001 - 16:34 #7
ok.. det er så iorden... *ss*

men det er tdaugaard der har lavet det!
Avatar billede kotelet Nybegynder
28. oktober 2001 - 16:37 #8
Perfekt ... Ja... jeg skulle måske liiige have tænkt lidt længere... Nu virker det i hvert fald ... ha en god eftermiddag

/Kotelet
Avatar billede burningice Nybegynder
28. oktober 2001 - 16:38 #9
tak, i lige måde :)
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