javascript как переключить путь к окну.местоположение и перенаправить
Я хочу перенаправить пользователя с разных URL-адресов на конкретный. Я пробовал различные варианты замены, и я не могу получить поведение, которое я хочу. Этот код работает, за исключением того, что я предоставляю имя хоста. Я хочу использовать существующее имя из окна.местоположение.hostname и просто укажите новый путь. Иногда URL-адреса различаются по размеру и Слэша ('/').
window.location = 'http://localhost:36065/NewPath';
Как бы я изменил эти URL-адреса?
http://somesite.com/xxx/yyy/zzz to http://somesite.com/NewPath
http://somesite.com/xxx/yyy to http://somesite.com/NewPath
http://somesite.com/xxx to http://somesite.com/NewPath
Я думаю, вы поняли. Путь может варьироваться в пути, я хочу заменить все после .com в основном с "NewPath"
Я хотел бы чистое решение regex, если это возможно, но я довольно новичок в этом отделе. Спасибо за любые советы или трюки.
3 ответов
вы всегда можете использовать различные location
свойства чтобы воссоздать нужную вам часть и добавить к ней новую часть:
window.location = location.protocol + "//" + location.hostname + "/NewPath";
просто чтобы показать трудный путь:
// Find everything up to the first slash and save it in a backreference
regexp = /(\w+:\/\/[^\/]+)\/.*/;
// Replace the href with the backreference and the new uri
newurl = windows.location.href.replace(regexp, "/dir/foo/bar/newpage.html");