/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Opdeling af lange ord
Fra : Jimmy


Dato : 15-09-01 13:15

Hej

Der var for et par uger siden et spørgsmål omkring hvordan man deler lange
ord fra user input op i mindre.
Jeg kan nu ikke finde tråden.

Det ærgelige er jo at en bruger taster xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx og på
den måde smadrer layoutet af en side.

Hvad var løsningen?



Hilsen Jimmy



 
 
Anders Holbøll (15-09-2001)
Kommentar
Fra : Anders Holbøll


Dato : 15-09-01 16:08

Jimmy wrote:
>
> Der var for et par uger siden et spørgsmål omkring hvordan man
> deler lange ord fra user input op i mindre.

Det kunne vel se ca. sådan ud:

Function WordBreak(ByVal S, ByVal MaxLength)
Dim i, Ch, StartPos
For i = 1 To Len(S)
Ch = Mid(S, i, 1)
If (Ch = " ") Or (Ch = vbCr) Or (Ch = vbLf) or (Ch = vbTab) Then
StartPos = i
End If
If (i - StartPos > MaxLength + 1) Then
S = Left(S, i - 1) & " " & Mid(S, i)
End If
Next
WordBreak = S
End Function

> Jeg kan nu ikke finde tråden.

http://groups.google.com/

--
Anders

Jimmy (16-09-2001)
Kommentar
Fra : Jimmy


Dato : 16-09-01 08:50

> Det kunne vel se ca. sådan ud:
>
> Function WordBreak(ByVal S, ByVal MaxLength)
> Dim i, Ch, StartPos
> For i = 1 To Len(S)
> Ch = Mid(S, i, 1)
> If (Ch = " ") Or (Ch = vbCr) Or (Ch = vbLf) or (Ch = vbTab) Then
> StartPos = i
> End If
> If (i - StartPos > MaxLength + 1) Then
> S = Left(S, i - 1) & " " & Mid(S, i)
> End If
> Next
> WordBreak = S
> End Function

Både og - sætningen "hej med dig jeg hedder kaj og jeg er
søøøøøøøøøøøøøøøøøøøøøøøød" bliver til "hej med dig jeg hedder kaj og jeg er
søøøøøø øøøøøøøøøøøøøøøøøød"

Den mangler rekursivitet, hvilket jeg desværre ikke er den store mester i


> http://groups.google.com/

Ja tak :-/

Hilsen Jimmy



Anders Holbøll (16-09-2001)
Kommentar
Fra : Anders Holbøll


Dato : 16-09-01 10:42

Jimmy wrote:
>
> > Det kunne vel se ca. sådan ud:
> > [kode]
>
> Både og - sætningen "hej med dig jeg hedder kaj og jeg er
> søøøøøøøøøøøøøøøøøøøøøøøød" bliver til "hej med dig jeg hedder kaj
> og jeg er søøøøøø øøøøøøøøøøøøøøøøøød"
>
> Den mangler rekursivitet, hvilket jeg desværre ikke er den store
> mester i

Der er ikke brug for noget rekursivitet, man skal bare skriver det
rigtige. Prøv at skifte sidte if-sætning ud med denne:
If (i - StartPos > MaxLength) Then
S = Left(S, i - 1) & " " & Mid(S, i)
StartPos = i
End If

--
Anders

Jimmy (17-09-2001)
Kommentar
Fra : Jimmy


Dato : 17-09-01 07:51

> Der er ikke brug for noget rekursivitet, man skal bare skriver det
> rigtige. Prøv at skifte sidte if-sætning ud med denne:

Fantastisk!
Det virker jo

Koden er her:

Function WordBreak(ByVal S, ByVal MaxLength)
Dim i, Ch, StartPos
For i = 1 To Len(S)
Ch = Mid(S, i, 1)
If (Ch = " ") Or (Ch = vbCr) Or (Ch = vbLf) or (Ch = vbTab) Then
StartPos = i
End If
If (i - StartPos > MaxLength) Then
S = Left(S, i - 1) & " " & Mid(S, i)
StartPos = i
End If
Next
WordBreak = S
End Function


Jeg takker - Hilsen JImmy




Søg
Reklame
Statistik
Spørgsmål : 177560
Tips : 31968
Nyheder : 719565
Indlæg : 6408946
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste