Du får lägga in i kakan så att det är ett mellanslag efter varje "paket" av värde. Här är ett exempel
str = Request.Cookies("DIN KAKA")
Arr = split(str, " ")
For i = 0 To Ubound(Arr)
response.write Arr(i) & ","
Next
6 svar · 383 visningar · startad av leox
Hej WF.
Har ett litet problem..
vill "splitta" min text-sträng.
Har olika värden som hämtas från en cookies, varje produkt har 4 värden var (artikelnummer, produktnamn, antal, pris)
När jag loopar ut den blir det såhär:
19340:Manhattan:1:1995 (ska va kommatecken) 19330:Armani:1:7995
Nu undrar jag hur jag skall göra för att få in ett kommatecken mellan produkterna, efter pris och innan nästa artikelnummer så skall det in ett kommatecken.. Detta måste även funka om man har fler produkter.
Tacksam för snabbt svar
Du får lägga in i kakan så att det är ett mellanslag efter varje "paket" av värde. Här är ett exempel
str = Request.Cookies("DIN KAKA")
Arr = split(str, " ")
For i = 0 To Ubound(Arr)
response.write Arr(i) & ","
Next
Erik Juhlin skrev:
Räcker med:
str = Replace(str, " ", ",")
Jag kanske har fel men är det inte osäkert ifall man gör så?
Eftersom det finns ett "fält" i den arrayen som är ett namn och namn kan innehålla mellanslag.
Men som sagt jag kan ha fel.
Nej det har du rätt i. Men joels funktion är inte på något sätt bättre då.
Det han har gjort är en hemmagjord replace funktion.
Fixade till något... detta script funkar perfekt ifall du inte har mellanslag på artikelnummer, antal eller pris men på produktnamn får du ha mellanslag.
Jag har testat med dem två exemplen du gav, både enskilt och tillsammans, det funkade bra. Testade också mellanslag på namnet, det funka också bra.
I alla fall, nog med snack... här har du
Function fixaStr(Str)
Set objRegExp = New regexp
objRegExp.Global = true
objRegExp.IgnoreCase = true
objRegExp.Pattern = "[A-Za-z0-9]+\:[A-Öa-ö0-9 ]+\:[A-Za-z0-9]+\:[A-Za-z0-9]+"
Set Matches = objRegExp.Execute(Str)
For Each Match in Matches
fixaStr = fixaStr & Match.value & ","
Next
fixaStr = Left(fixaStr,Len(fixaStr)-1)
'fixaStr = split(fixaStr,",")
End Function
Ta bort ' (enkel knot) i slutet ifall du vill att funktionen ska bli en Array istället för en variabel.