Показать сообщение отдельно
  #2 (permalink)  
Старый 26.03.2016, 21:01
Кандидат Javascript-наук
Отправить личное сообщение для Strongman Посмотреть профиль Найти все сообщения от Strongman
 
Регистрация: 22.03.2016
Сообщений: 132

Я изобрел 3 способа:
var str = "brendyi-1/acura.html?tv_brand=&tv_model-acura=MDX&tv_year=2008&tv_engine=3.7";
var re = /\d+(?!\/)/g;
var obj = str.match(re);

var re2 = /[^-]{1}\d+/g;
var obj2 = str.match(re2);
for(var n = 0; n < obj2.length; n++){
obj2[n] = obj2[n].slice(1, obj2[n].length+1);}

var re3 = /\d+/g;
var obj3 = str.match(re3);
//не брать 0 элемент

Первый способ - самый эффективный и решает Вашу задачу. Второй способ - немножко корявый, ищет число с первым символом и потом удаляет его в каждом элементе объекта obj2.
Третий способ - ну мне кажется Вы могли воспользоваться этим способом. Выдает 4 числа: "1", "2008", "3" и "7". Тут просто надо не брать 0 элемент в массиве-объекте obj3.
(Можете "+" поставить).
Ответить с цитированием