Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Помогите с регуляркой плиз (https://javascript.ru/forum/misc/75158-pomogite-s-regulyarkojj-pliz.html)

Frost56ru 07.09.2018 20:29

Помогите с регуляркой плиз
 
Есть текущий url например:
https://site.ru/serien/4053-house-of-cards-staffel-5-episode-13.html


Как получить из него в 1 переменную var staffel = 5, и 2 переменную var episode 13 с помощью регулярки?

j0hnik 07.09.2018 20:38

var str = 'https://site.ru/serien/4053-house-of-cards-staffel-5-episode-13.html',
staffel = str.match(/(?<=staffel-)\d+/),
episode = str.match(/(?<=episode-)\d+/);


может работать не везде (ES7)

Frost56ru 07.09.2018 20:46

Цитата:

Сообщение от j0hnik (Сообщение 494218)
var str = 'https://site.ru/serien/4053-house-of-cards-staffel-5-episode-13.html',
staffel = str.match(/(?<=staffel-)\d+/),
episode = str.match(/(?<=episode-)\d+/);


может работать не везде (ES7)

Спасибо огромное))

Frost56ru 07.09.2018 20:52

Цитата:

Сообщение от j0hnik (Сообщение 494218)
var str = 'https://site.ru/serien/4053-house-of-cards-staffel-5-episode-13.html',
staffel = str.match(/(?<=staffel-)\d+/),
episode = str.match(/(?<=episode-)\d+/);


может работать не везде (ES7)

А как текущий URL туда воткнуть? делаю window.location, а мне ошибка возвращается

рони 07.09.2018 20:57

Цитата:

Сообщение от Frost56ru
window.location

window.location.href

Aetae 07.09.2018 21:16

Так будет работать везде, а не только кое-где:
var match = location.pathname.match(/staffel-(\d+)-episode-(\d+)/);
if(match){
  var staffel = match[1];
  var episode = match[2];
}


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