Javascript Как я могу извлечь идентификатор как INT из URL-адреса? - PullRequest
0 голосов
/ 06 мая 2020

У меня есть URL-адрес типа:

localhost/Support/My-DNN-Module-Name/ID/133

Мне всегда нужно извлекать значение идентификатора в конце, в данном случае 133. Вот что я делаю сейчас, чтобы извлечь его:

if (url) {
      // try tograb number as int from url
      var intValue = url.match( /\d+/ );
                if (intValue) {
                    console.log("converted url to int value and the result is: " + intValue);                   
                }
                else {
                    console.log("could not convert url to int value");
                }
}

Очевидно, это не очень хорошо, если URL-адрес содержит другие числа, например, в случае, если localhost вводится как фактический IP-адрес.

Как я могу настроить таргетинг только последняя часть после идентификатора и возьмите любой номер, который может быть там, в идеале, независимо от того, как может выглядеть URL-адрес перед ним?

1 Ответ

1 голос
/ 06 мая 2020

Поскольку нужное число всегда заканчивается в строке, вы можете добавить $, чтобы совпадающие цифры находились в самом конце:

const str = 'localhost/12345/Support/My-DNN-Module-Name/ID/133';
const match = str.match(/\d+$/);
if (match) {
  console.log(match[0]);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...