webForumDet fria alternativet

Splitta värde i variabel till tre variabler

ASP

8 svar · 477 visningar · startad av bigsky

Medlem sedan maj 2002821 inlägg
Frågan#1

Hur ser koden ut för att dela upp värdet i variabeln strText och lägga in värdena i tre olika variablar:

strText = "1585_2700_070715.pdf"

strVar1 = "1585"
strVar2 = "2700"
strVar3 = "070715"

Medlem sedan dec. 20014 239 inlägg
#2

Trimma bort de tre sista teknen, lägg det i en array och slippat på "_" tecknet.

Gjord för .NET o C# 
string[] arr
arr = line.Split(new Char[] {'_'});

men det kanske ger dig en hint om hur lösningen kan ske.

Medlem sedan juni 20019 519 inlägg
#3
Function arrayNumbs(str)
  With New RegExp
    .Global = True
    .Pattern = "[^\d_]*" ' Behåll endast nummer och "_" i strängen
    str = .Replace(str, "")
  End With
  arrayNumbs = split(str,"_") ' Delar strängen vid varje _ (bli en array)
End Function

Dim arr
arr = arrayNumbs("1585_2700_070715.pdf")
for i = 0 to ubound(arr)
  Response.Write arr(i) & "<br>"
Next
Medlem sedan juli 2003465 inlägg
#4

eller så här

strText = "1585_2700_070715.pdf"
arr = split(replace(strText, ".pdf", ""), "_")

strVar1 = arr(0)
strVar2 = arr(1)
strVar3 = arr(2)
Medlem sedan sep. 2003448 inlägg
#5

eller som på http://hjd.se/playground/split/

Medlem sedan juni 20019 519 inlägg
#6

Melitta: Ditt exempel som du länkade är desamma som Glitter gav ;)

Medlem sedan sep. 2003448 inlägg
#7

Nej det är det inte.. Skapar inte någon array för att ta ut värdet, men inte långt ifrån :)

Medlem sedan dec. 20014 239 inlägg
#8

Man undrar ju om något av inläggen löste TS problem...?

Medlem sedan juni 20019 519 inlägg
#9

Bra fråga ;) ser ut som det fungera

244 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
120 ms — deklarationer (db)
0 ms — hämta statistik (cache)
121 ms — hämta tråd, inlägg och bilagor (db)
119 ms — ändringar (db)