How can I change the last component of a url path?

new URL("175", "http://something.com:6688/remote/17/26/172").href

This also works with paths, e.g.

new URL("../27", "http://something.com:6688/remote/17/26/172").href"http://something.com:6688/remote/17/27"

new URL("175/1234", "http://something.com:6688/remote/17/26/172").href"http://something.com:6688/remote/17/26/175/1234"

new URL("/local/", "http://something.com:6688/remote/17/26/172").href"http://something.com:6688/local/"

See https://developer.mozilla.org/en-US/docs/Web/API/URL/URL for details.


var url = "http://something.com:6688/remote/17/26/172"
url = url.replace(/\/[^\/]*$/, '/175')

Translation: Find a slash \/ which is followed by any number * of non slash characters [^\/] which is followed by end of string $.


Split the String by /, remove the last part, rejoin by /, and add the new path

newurl = url.split('/').slice(0,-1).join('/')+'/175'

Tags:

Javascript