JS Как выделить оставить часть текста URL?

172
11 июня 2018, 21:40

Есть строки, типа этой:

https://www.ebay.com/itm/1X-Serial-Interface-Board-Module-LCD1602-Address-Changeableyq/152646941014?hash=item238a777956:g:J0YAAOSwcu5UNp~I

Нужно изменить к такому виду:

https://www.ebay.com/itm/152646941014

Что дальше, как сделать?
Никак не могу осилить эти регулярные выражения. Может можно иначе?

Answer 1

Вот так, к примеру:

var s = 'https://www.ebay.com/itm/1X-Serial-Interface-Board-Module-LCD1602-Address-Changeableyq/152646941014?hash=item238a777956:g:J0YAAOSwcu5UNp~I'; 
 
console.log(s.match(/(http.*itm\/)/)[1] + s.match(/\/(\d*)\?/)[1]);

Answer 2

Вот, подсказали, работает:

var url = "https://www.ebay.com/itm/1X-Serial-Interface-Board-Module-LCD1602-Address-Changeableyq/152646941014?hash=item238a777956:g:J0YAAOSwcu5UNp~I"; 
url = url.replace(/(itm).+(\/\d+).*/, "$1$2"); 
console.info(url);

Answer 3

var s = 'https://www.ebay.com/itm/1X-Serial-Interface-Board-Module-LCD1602-Address-Changeableyq/152646941014?hash=item238a777956:g:J0YAAOSwcu5UNp~I'; 
 
console.log(s.match(/(http.*itm\/)/)[1] + s.match(/\/(\d*)\?/)[1]);
С этим URL работает но с другими нет в консоли выдаёт ошибку почему-то у меня: TypeError: Cannot read property '1' of null

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

READ ALSO
Snake_case в camelCase

Snake_case в camelCase

В строке необходимо найти все дефисы или нижние подчеркивания, убрать их и букву после них сделать большой:

180
Как вернуть не html данные из doGet(e)?

Как вернуть не html данные из doGet(e)?

Есть 2 скрипта на разных аккаунтах

217
Как вывести веса и значения в Synaptic.js?

Как вывести веса и значения в Synaptic.js?

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

192