Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как парсить URL, выделив из него непосредственно путь (https://javascript.ru/forum/misc/36247-kak-parsit-url-vydeliv-iz-nego-neposredstvenno-put.html)

Shitbox2 09.03.2013 00:37

Как парсить URL, выделив из него непосредственно путь
 
У нас есть path/subpath/file.png
Нужно получить path/subpath/

a.pathname для такого не годится. Как без него сделать?

dmitriymar 09.03.2013 00:41

Цитата:

Сообщение от Shitbox2
a.pathname для такого не годится. Как без него сделать?

никак без него.
В остальном , или регулярки или split, или прочие методы для работы со строками в помощь

Shitbox2 09.03.2013 00:51

Пока делаю так
var str = 'path/subpath/file.png'
var arr = str.split('/');
arr.pop()
console.log(arr.join('/'))

Но хотелось бы коротко в одну строчку. А регулярка какая будет? Не бум-бумвних...

Shitbox2 09.03.2013 01:37

Не догоняю чего-то в регулярке. Вроде такая должна работать .+(?!/) но не пашет...

Работает такая штука [^/]+$, но почему не пахал первый вариант ума не приложу

Serg_pnz 09.03.2013 10:16

Shitbox2,
это делается "с заглядыванием вперед"
var str = 'path/subpath/file.png'
newstr = str.match(/(?=(.*)\/)/)
alert(newstr[1])


Смотри тут Пункт 6.4.5

Akalenik 09.03.2013 10:19

ну так и делай в одну строчку:
arr = str.split('/').slice(0,-1).join('/') + '/'

можно и регуляркой при желании


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