Vad är det du vill åstadkomma? Kan du ge ett exempel på indata och förväntat resultat? Jag har svårt för verbala beskrivningar.
OT:
Trim myString
borde vara:
mystring = Trim (myString)
4 svar · 312 visningar · startad av Dee
Har snart slut på hår att slita från min arma hjässa... :OO
Vilket mönster ska jag använda för att få träffar på det sista mellanslaget i den tidigare träffen?
Så här ser funktionen ut så här långt:
'-----------------------------------------------------------------
Function check(myString)
Set objRegExp = New regexp
objRegExp.Global = true
objRegExp.IgnoreCase = true
objRegExp.Pattern = "(.{22})"
myString = objRegExp.Replace(myString,"$1")
'Träffar alla, inte bara sista mellanslaget
objRegExp.Pattern = "(\s)"
myString = objRegExp.Replace(myString,"$1<br>")
Trim myString
check = myString
End Function
'-----------------------------------------------------------------
Tack på förhand!
/r att byta rubrik på inlägget gick ju inte så bra :OO
Vad är det du vill åstadkomma? Kan du ge ett exempel på indata och förväntat resultat? Jag har svårt för verbala beskrivningar.
OT:
Trim myString
borde vara:
mystring = Trim (myString)
Funktiunen ska användas som en del av en forumkod, alltså strängen som går in kommer att innehålla inlägget.
Det första jag vill göra är att dela strängen efter 22 tecken...
objRegExp.Pattern = "(.{22})"
myString = objRegExp.Replace(myString,"$1")
...det är inga problem, men jag vill ju inte att strängen ska delas mitt i ett ord. Utan vill då leta efter det sista mellanslaget innan och dela strängen där istället.
Ex:
myString = Jag gillar wF, alla här är snälla och hjälper mig när jag har problem.
Resultat:
Jag gillar wF, alla hä
r är snälla och hjälper mig när jag har problem.
Men jag vill ha det:
Jag gillar wF, alla
här är snälla och hjälper mig när jag har problem.
myString = "Jag gillar wF, alla här är snälla och hjälper mig när jag har problem"
Function check(myString)
Set objRegExp = New regexp
objRegExp.Global = true
objRegExp.IgnoreCase = true
objRegExp.Pattern = "(\s\S*?$)"
if len(mystring) > 22 then myString = objRegExp.Replace(mid(myString,1,22),"<br>$1") & check(mid(mystring,23))
check = myString
End Function
response.write check(Mystring)
ger
Jag gillar wF, alla
här är snälla och
hjälper mig när jag har
problem
Om du bara vill ha en radbrytning, så
myString = "Jag gillar wF, alla här är snälla och hjälper mig när jag har problem"
Function check(myString)
Set objRegExp = New regexp
objRegExp.Global = true
objRegExp.IgnoreCase = true
objRegExp.Pattern = "(\s\S*?$)"
if len(mystring) > 22 then myString = objRegExp.Replace(mid(myString,1,22),"<br>$1") & mid(mystring,23)
check = myString
End Function
response.write check(Mystring)
det ger resultatet
Jag gillar wF, alla
här är snälla och hjälper mig när jag har problem
Ett stort tack!