/ Forside/ Teknologi / Udvikling / ASP / Spørgsmål
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
sætter timer på database ?
Fra : glenn007
Vist : 403 gange
200 point
Dato : 05-09-04 00:38

jeg har en tidfsformat som ser således ud : 12:40 og som lægges i variablen tim
jeg skal såigen splitte min variabel tim op så jeg for 3 variabler var1 skal indeholde 12 var2 skal have værdien : og var3 skal have værdien 40 hvordan kan jeg gøre dette ?

jeg er ikke haj til at dele op i strenge som nok er noget af det der skal til

 
 
Kommentar
Fra : gandalf


Dato : 05-09-04 01:42

Hej Glenn007

here we go :

var1 = hour(tim)
var2 = ":"
var3 = minute(tim)

Dette burde klare dit problem.

En anden måde ville være at bruge funktionen split.

strs = tim.split(":")

var1 = strs(0)
var2 = strs(1)
var3 = strs(2)

Gandalf

Kommentar
Fra : Yude


Dato : 05-09-04 12:21

En anden måde kunne være:

var3 = Right(tim,2) // Eller var3 = Mid(tim,Len(tim)-2,2)
var2 = Mid(tim,Len(tim)-3,1) // Eller var3 = Mid(tim,3,1), men det går galt hvis tiden kan være fx 9:32
var1 = Left(tim,Len(tim)-3) // Eller lidt kønnere Left(tim,Len(tim)-Len(var2&var3))

En lille detalje er, at typen af variablerne automatisk bliver sat til string. Altså tekst. Hvis du gerne vil behandle var1 og var3 som tal, kan du gøre eksplicit bruge CInt: var1 = CInt(Left(tim,Len(tim)-Len(var2&var3))).

Har ikke testet det, men eventuelle fejl kan du sikkert selv fikse. Eller må du lige spørge igen.

Læs evt. mere her (det er ikke så kryptisk, som det måske ser ud):
Right: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/vsfctright.asp
Mid: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/vsfctmid.asp
Left: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/vsfctleft.asp
CInt: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/vsfctcint.asp
Samlet oversigt: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/vtorifunctions.asp

> Gandalf
Er du sikker på, at din sidste udgave af var2 holder? Så vidt jeg husker, bliver strs = Array("12","40"). Altså strs(0)="12" og strs(1)="40".

\Yude

Kommentar
Fra : gandalf


Dato : 05-09-04 20:23

Hej Yude

Nej, jeg kan ikke huske om en split funktion tager seperatoren med i return værdien. Glenn007 hvis ikke må du bruge dette eksempel i stedet :

strs = tim.split(":")

var1 = strs(0)
var2 = ":"
var3 = strs(1)

Med hensyn til at selv splitte strengen op kan volde problemer da du skal vide længden på hver eneste ciffer i din streng, og i Yude's eksempel forventes det er din time og minutssats er 2 karakter lang. Så istedet for at hardcode en længde på 2, så brug "tim.indexof(":").

En anden måde ville være at bruge regulær expressions, her behøver du ikke vide hvor mange ciffer din time og minutssats er.

regexp = "(?<timer>[0-9]+)(?<seperator>[\:])(?<minutes>[0-9]+)"

Hvis du ikke kender noget til regexp så er det et godt udgangspunkt for at lære at strengbehandle da det giver dig nogle kæmpe fordele.

Nu tror jeg vi har været alle muligheder igennem, hvad siger du Yude, kan du komme i tanke om der er nogen som vi har glemt?

God fornøjelse Glenn007.

Gandalf



Kommentar
Fra : glenn007


Dato : 07-09-04 19:15

tak for hjælpen gutter, flot hjælp må jeg sige, det gav lys forude hehe


PS har i andre også haft problemmer med at komme i forbindelse med kandu`s server de sidste dage ?

Kommentar
Fra : Yude


Dato : 07-09-04 19:22

Jep.

Du har følgende muligheder
Dette spørgsmål er blevet annulleret, det er derfor ikke muligt for at tilføje flere kommentarer.
Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408847
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste