У меня есть строка в следующем формате:Как извлечь подстроку из строки в JavaScript?
var str1="tag:youtube.com,2008:video:VrtMalb-XcQ";
От этого мне нужно извлечь последнюю часть т.е. VrtMalb-XcQ
. Как я могу это достичь?
У меня есть строка в следующем формате:Как извлечь подстроку из строки в JavaScript?
var str1="tag:youtube.com,2008:video:VrtMalb-XcQ";
От этого мне нужно извлечь последнюю часть т.е. VrtMalb-XcQ
. Как я могу это достичь?
использование split
и pop
:
var str1="tag:youtube.com,2008:video:VrtMalb-XcQ";
str1.split(':').pop()
Совершенно необязательно разделить все это, когда все, что вам нужно, это индекс последнего ':' –
@ SimonAndréForsberg ... почему это не нужно? это простое и короткое решение, прекрасно работает –
Это пустая трата процессора и памяти. Это делает больше работы, чем на самом деле требуется (небольшие отходы, но все равно отходы) –
Что вам нужно знать индекс последнего :
. Это может быть достигнуто с помощью lastIndexOf
var str1="tag:youtube.com,2008:video:VrtMalb-XcQ";
var result = str1.substr(str1.lastIndexOf(':') + 1);
+ 1
там, потому что в противном случае вы бы также получить непосредственно двоеточие в строке.
Это действительно самый быстрый способ сделать это и требует наименьшей памяти.
Большое спасибо. Это работает :) – user3177493
"tag:youtube.com,2008:video:VrtMalb-XcQ".replace(/.*:/, "")
С помощью regex для этого? Шутки в сторону? Я не думаю, что это хорошее решение. –
@ SimonAndréForsberg Не стоит нисходящего, он работает –
@JuanMendes Извините, я слишком активен в обзоре кода, чтобы сделать что-нибудь еще. Кроме того, описания вообще нет, просто дамп кода. –
Посмотрите здесь: используйте lastIndexOf в 'x' и используйте метод подстроки. http://www.w3schools.com/jsref/jsref_obj_string.asp – Stultuske