webForumDet fria alternativet

Plocka bort text efter sista /

.NETur .NET

4 svar · 513 visningar · startad av andreas_lindh

Medlem sedan jan. 20011 140 inlägg
Frågan#1

Hur gör man för att plocka bort allt efter det sista /?

Dim url As String = Request.Url.AbsoluteUri.ToString
response.write(url)

Då får jag ut http://localhost/cup/test/test/Default.aspx och jag vill ha http://localhost/cup/test/test/

Medlem sedan aug. 20039 342 inlägg
#2
	Dim url As String = Request.Url.AbsoluteUri.ToString

	Set z = new Regexp
	z.Pattern = "[^/]*$"
	url = z.Replace(url, "")
Medlem sedan jan. 20011 140 inlägg
#3

Tack

Medlem sedan aug. 20039 342 inlägg
#4
	Dim url As String = Request.Url.AbsoluteUri.ToString

	Set z = new Regexp
	z.Pattern = "[^\/]*(\?.*)?$"
	url = z.Replace(url, "")

Uppdatering: Om man ska vara petig, så är det så att koden i mitt förra inlägg skulle matcha adresser med / i en querystring på annat sätt än du vill. T ex skulle http://www.foo.com/bar/foobar.php?path=/path1/path2 resultera i http://www.foo.com/bar/foobar.php?path=/path1/. Koden i detta inlägg löser, som du kanske har listat ut, detta problem.

Medlem sedan jan. 20011 140 inlägg
#5

Tack igen.

Så här blev koden

Dim url As String = Request.Url.AbsoluteUri.ToString
Dim z As RegularExpressions.Regex
url = z.Replace(uri, "[^\/]*(\?.*)?$", "")
131 ms totalt · 3 externa anrop · v20260731065814-full.25f56b17
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)