Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Обрезка текста до и после нужной фразы с последующей заменой (https://javascript.ru/forum/misc/57671-obrezka-teksta-do-i-posle-nuzhnojj-frazy-s-posleduyushhejj-zamenojj.html)

kovalenko3331 16.09.2019 22:01

рони,
Подскажите пожалуйста, как можно сделать замену ссылки
https://site.to/776eeb07pdkj/109445
на
https://site.to/embed-776eeb07pdkj.html
то есть вырезать все что между первым вторым слешем и вставить в новую ссылку. В данном случае это
776eeb07pdkj
Я сделал так
var value ="https://site.to/776eeb07pdkj/109445";
     value = value.replace(/https.*?site.to\/([^\/]+).*?(\d+)/gim, 'https://site.to/embed-$1.html');
     alert(value)
делает то что нужно, но потом повторно заменяет ссылку, так как они похожи.
Заранее спасибо за ответ. С уважением kovalenko3331

рони 17.09.2019 09:55

Цитата:

Сообщение от kovalenko3331
value.replace(/https.*?site.to\/([^\/]+).*?(\d+)$/gim,

добавьте красное

kovalenko3331 17.09.2019 14:17

ронни,
спасибо работает, но только если ссылка одна, а если вот так
'https://site.to/776eeb07pdkj/109445'
или так
'https://site.to/776eeb07pdkj/109445','https://site.to/676eeb07pdkj/609445'
уже не хочет.

laimas 17.09.2019 15:08

var a = new URL("https://site.to/776eeb07pdkj/109445"),
   link = a.origin+'/embed-'+a.pathname.substring(1).split('/', 1)[0]+'.html';


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

рони 17.09.2019 15:39

kovalenko3331,
/https.*?site.to\/([^\/]+)\/(\d+)/gim

kovalenko3331 17.09.2019 16:25

ронни, теперь если уже есть
'https://site.to/embed-776eeb07pdkj.html'
к нему добавить
,'https://site.to/tp442flo87glkl/42688968'
получив
'https://site.to/embed-776eeb07pdkj.html','https://site.to/tp442flo87glkl/42688968'
удаляется первая часть, в итоге получается
'https://site.to/embed-tp442flo87glkl.html'
То есть, если к уже измененным ссылкам добавляются оригинальные, измененные ранее удаляются.

рони 17.09.2019 16:30

kovalenko3331,
https:\/\/site.to\/([^\/]+)\/(\d+)/gim

kovalenko3331 17.09.2019 16:41

рони,
Вы гений! Огромное спасибо!


Часовой пояс GMT +3, время: 15:25.