2013-08-17 3 views
0

мне нужно извлечь часть строки, в то время как внешний вид, как это, например:Extract часть строки

01.   Artist Name - Song Title 

Так у меня есть счетчик в начале, точку и разделитель может быть что угодно, на данный момент реализована Сепаратор:

var separator =     

Я хочу извлечь все после разделителя.

Использование jquery/javascript.

ответ

8

Просто разделить строку на разделитель и поп последней части:

var lastPart = str.split(separator).pop(); 

FIDDLE

+0

+1 Гораздо лучше, чем у меня. Всегда забывайте о 'pop()' :) –

+0

@RoryMcCrossan - Спасибо! Иногда иногда используются команды 'shift()' и 'pop()'. – adeneo

0

Вы можете попробовать использовать String.split, но я предлагаю использовать String.indexOf и String.substring найти первые смещение вашего разделителя, а затем выберите остальную часть строки. Использование String.split может потерпеть неудачу, если ваше имя и название песни содержат разделитель внутри.

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

Чтобы использовать IndexOf:

var str = "01.   Artist Name - Song Title"; 
var sep = "   " 
var artist_title = str.substring(str.indexOf(sep) + sep.length); 
document.getElementById("demo").innerHTML = artist_title; 

Чтобы использовать регулярное выражение:

var str = "01.   Artist Name - Song Title"; 
var regex = /(\d+)\.   ([^-]+) - (.*)/ 
var matches = str.match(regex); 
document.getElementById("demo").innerHTML = matches[2] + " : " + matches[3]; 
Смежные вопросы