webForumDet fria alternativet

Hitta sista "/" i en sträng

ASP

8 svar · 459 visningar · startad av saw

Medlem sedan mars 20011 880 inlägg
Frågan#1

Det här är retfullt, men jag har glömt.
Jag får in en sträng via

Request.ServerVariables("PATH_INFO")

..som resulterar i "/Hemsidor/Medlem/MemberMenu.asp"
Jag vill bara ha ut "MemberMenu.asp"
Har glömt hur jag använder instr för att hitta sista "/". :q

Medlem sedan jan. 20032 285 inlägg
#2
strPath = Request.ServerVariables("PATH_INFO")
strPath = Mid(strPath, InStrRev(strPath, "/") + 1)
Medlem sedan apr. 200370 inlägg
#3

Ännu ett exempel...

Dim arrPath
Dim strPath

arrPath = Split(Request.ServerVariables("PATH_INFO"), "/")

If IsArray(arrPath) Then
	strPath = arrPath(UBound(arrPath))
Else
	'Om ingen sökväg hittades...
End If
Medlem sedan mars 20011 880 inlägg
#4

JAg tackar för detta

Medlem sedan juni 200032 967 inlägg
Medlem sedan jan. 20013 582 inlägg
#6

Hmmm..

Konstigt svar som löste problemet.... ;)

Medlem sedan feb. 200112 078 inlägg
#7

Eftersom det första svaret enligt mig är en snyggare lösning så markerar jag det som det korrekta svaret.

Saw » Förstår du vad som menas med att markera det svar som hjälpte dig att lösa problemet?

Medlem sedan mars 20011 880 inlägg
#8

Nej jag gjorde inte det. Jag får titta lite närmare nästa gång som jag lägger in en förfrågan.

Tack till alla som hjälpt mig.

Medlem sedan maj 200010 687 inlägg
#9

Ragge skrev:

Ännu ett exempel...

Dim arrPath
Dim strPath

arrPath = Split(Request.ServerVariables("PATH_INFO"), "/")

If IsArray(arrPath) Then
	strPath = arrPath(UBound(arrPath))
Else
	'Om ingen sökväg hittades...
End If

Split returnerar alltid en array. Kan dock returnera en array utan några poster om strängen man splittar är tom. Så If UBound(arrPath) >= 0 Then kan vara vettigt.

267 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
134 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
132 ms — ändringar (db)