2016-03-06 1 views
1

Как я могу просто извлечь текст «androiddev» из следующей строки в JavaScript?Как урезать и разбить строку Url

https://www.reddit.com/r/androiddev/comments/49878b/droidcon_sf_is_11_days_away/ 

Я пробовал обрезать его со спины, но я все еще придерживаюсь передней части.

Застрял на этом в течение нескольких часов, был бы очень признателен за любую помощь!

+1

'String.prototype.trim()' доступен в современных браузеры. – Pointy

+0

@Pointy, но это не только когда есть пробелы с обеих сторон? –

+0

'var value = 'yourstring'.split ('/') [4]' –

ответ

1

Легко и быстро :)

var value = 'yourstring'.split('/')[4] 
+0

Отлично, спасибо! :) –

+0

это решение Я уже опубликован 9 минут назад :) – isvforall

+0

@isvforall см. Третий комментарий в разделе вопросов :) –

0

Используйте функцию substr Строка:

var s = "https://www.reddit.com/r/androiddev/comments/49878b/droidcon_sf_is_11_days_away/"; 
var ss = s.substr(25, 10); 
alert(ss); 

Если первый аргумент является то, что позиция индекса для начала извлечения и на второй, как много символов. извлекать.

Fiddle: https://jsfiddle.net/h8afc3pt/

+0

Разве вы просто не ненавидите его, когда кто-то из усердного пользователя Stack Overflow чувствует необходимость понизить голос всех, кто публикует ПРАВИЛЬНЫЕ ответы, потому что они считают, что их ответ БОЛЬШЕ ПРАВИЛЬНО? –

+0

Я не спускаю вниз, но думаю, что строки могут иметь разную длину. – isvforall

+0

Да, конечно, разные строки будут иметь разную длину, но мой ответ показывает, как извлечь подстроку, которая имеет значение независимо от того, с какой строкой вы работаете. –

0
var str = "https://www.reddit.com/r/androiddev/comments/49878b/droidcon_sf_is_11_days_away/" 
var name = str.split('/')[4] 
console.log(name);// androiddev 
+0

Это хорошее решение в этом случае, когда косые черты прекрасно разделяют нужные данные. Не может быть лучшим решением, если данные не так красиво закрыты. –

+1

Отлично, спасибо! :) –

0

Конечно, вы можете просто разделить весь URL с /, но я вообще считаю безопасным сломать URL в известных частях , а затем извлекать из них информацию.

Вот своего рода подлый способ сделать URL разборе в браузере

function parseUrl(url) { 
    var elem = document.createElement('a'); 
    elem.href = url; 
    return { 
    protocol: elem.protocol, 
    host:  elem.host, 
    hostname: elem.hostname, 
    port:  elem.port, 
    pathname: elem.pathname, 
    hash:  elem.hash 
    }; 
} 

Затем вы можете использовать его, как это

var url = "https://www.reddit.com/r/androiddev/comments/49878b/droidcon_sf_is_11_days_away/" 
parseUrl(url).pathname.split('/')[2]; // "androiddev" 
Смежные вопросы