Avatar billede csslover Nybegynder
07. december 2003 - 22:14 Der er 11 kommentarer og
1 løsning

hvordan bruger jeg redim

hvis en function der spliter en billede sti ved "/" laver et array til mig, og jeg kun er interesseret i de sidste 2 dele af array'et, hvordan gør jeg så, jeg har prøvet lidt redim selv, men ikke noget der virker:

Function GetFileName(x)
dim a, n
    If Not InStr(x, "http://") <> 0 Then'it is not something usefull, write default err image
        x = "http://errfolder/default_err_image.jpg"
    End If
        a = split(x, "/")
GetFileName = a
'GetFileName skal kun bestå af de sidste 2 dele ?
End Function
Avatar billede csslover Nybegynder
07. december 2003 - 22:20 #1
kunne lave et nyt array, 2 som består af ubound(a)-1, og 2, men er redim ikke vejen frem ?
Avatar billede skwat Praktikant
07. december 2003 - 22:21 #2
brig uboud til at finde størelsen på dit array
Avatar billede thesurfer Nybegynder
07. december 2003 - 22:23 #3
skwat skrev.. bare UBound :)
f.eks.:
for i = Ubound(a) - 2 to Ubound(a)
' din kode her
next

måske skal det være "- 1"..
Avatar billede thesurfer Nybegynder
07. december 2003 - 22:33 #4
Prøv:
dim streng, sidste_del, anden_del

streng = "http://www.server.dk/folder/folder2/page.asp"

sidste_del = Right(streng, len(streng) - InStrRev(streng, "/"))

streng = left(streng, InStrRev(streng, "/") - 1)

anden_del = Right(streng, len(streng) - InStrRev(streng, "/"))
Avatar billede thesurfer Nybegynder
07. december 2003 - 22:34 #5
Hvis du vil checke om det virker:

<%
dim streng, sidste_del, anden_del

streng = "http://www.server.dk/folder/folder2/page.asp"

response.write "streng: " & streng & "<br>"

sidste_del = Right(streng, len(streng) - InStrRev(streng, "/"))

streng = left(streng, InStrRev(streng, "/") - 1)

anden_del = Right(streng, len(streng) - InStrRev(streng, "/"))

response.write "sidste_del: " & sidste_del & "<br>"
response.write "anden_del: " & anden_del
%>
Avatar billede thesurfer Nybegynder
07. december 2003 - 22:35 #6
Hvis du ikke gider til at erstatte "streng" med "x", kan du bare skrive:
dim ...
streng = x
...
Avatar billede csslover Nybegynder
07. december 2003 - 22:38 #7
det ser ud til at virke fint, begge eksempler...
jeg tænker at den mest korrekte måde at gøre det på ville være at redimentionere array'et, og returnere det, er det mig der tænker forkert ?
Avatar billede thesurfer Nybegynder
07. december 2003 - 22:40 #8
Jeg tror ikke jeg nogensinde har redimmet noget som helst :)
Hvad kan man få ud af det?
Avatar billede thesurfer Nybegynder
07. december 2003 - 22:43 #9
Mit eksempel med ubound(a) minus en konstant virker sikkert også.. en det er ikke den løsning jeg ville bruge..
Jeg ville undgå arrays hvis jeg kunne.. derfor ville jeg bruge left, mid og right.
Avatar billede csslover Nybegynder
07. december 2003 - 22:45 #10
i dine eksempler bruger du flere functioner...(lave et nyt arr... bruge instrrev, right, og left)

så i forhold til perfomance, ville det mest korrekte være at redim'e, kunne jeg forestille mig

men for nu er det fint, jeg finder ud af det med redim når jeg har tid til at læse lidt mere om det...

tnx
Avatar billede thesurfer Nybegynder
07. december 2003 - 22:48 #11
Jeg lavede da ikke et nyt array :)
..og ja, en gang imellem kan jeg da godt li' at pille ved strenge.. :)
Avatar billede csslover Nybegynder
07. december 2003 - 22:49 #12
nej men der skal jo lavet et nyt hvis min function ska returnere et array...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester