Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   как получить часть url return url (https://javascript.ru/forum/misc/41232-kak-poluchit-chast-url-return-url.html)

nanana 04.09.2013 23:02

как получить часть url return url
 
Привет всем!
Вопрос от человека далекого от javaScript.
у меня есть URL типа http://aaa.ru/?066
как мне получить только http://aaa.ru
(должен быть return )

:help:
заранее спасибо за помощь

BETEPAH 04.09.2013 23:40

Если урл берется из адресной строки, то проще всего через window.location.hostname
А если это переменная, то с помощью регулярного выражения. Вопросительный знак после слеша всегда идет?

nanana 04.09.2013 23:43

спасибо за ответ. да всегда, мне нужна функция с return. так можно сделать?

BETEPAH 04.09.2013 23:48

Цитата:

Сообщение от nanana
да всегда

тогда совсем просто:
function host(url) {
 return url.split('/?')[0]   
}
alert(host('http://aaa.ru/?066'));


P.S. а кто подскажет, как на форуме вставлять скрипт, который можно запускать?

nanana 04.09.2013 23:49

Спасибо огромное!!! только числа динамически меняются (забыл написать)

BETEPAH 04.09.2013 23:54

Цитата:

Сообщение от nanana
только числа динамически меняются (забыл написать)

Это не имеет значения для данного скрипта.
Функция "рубит" на куски строку, встречая последовательность "/?" и возвращает первый из получившихся кусков. Если последовательность не встретится, вернет всю строку нерубленной.

nanana 04.09.2013 23:54

спасибо

рони 05.09.2013 01:09

Цитата:

Сообщение от BETEPAH
P.S. а кто подскажет, как на форуме вставлять скрипт, который можно запускать?

run в тег [JS run] http://javascript.ru/formatting

ruslan_mart 05.09.2013 05:48

Цитата:

Сообщение от BETEPAH
return url.split('/?')[0]

А ведь слэша может и не быть. :)

BETEPAH 05.09.2013 08:20

Цитата:

Сообщение от Ruslan_xDD (Сообщение 270927)
А ведь слэша может и не быть. :)

В следующий раз будем запрашивать более подробное ТЗ с большим количеством вариантов строки ;)
Можно убрать из сплитера слеш, я думаю результат от этого не пострадает. А если отсутствие последнего слеша в возвращаемой строке критично, его не трудно удалить. Не хочется на ровном месте регулярки прикручивать ;)


Часовой пояс GMT +3, время: 07:56.