Извлечь значение параметра из URL с помощью регулярных выражений

Нажмите «Проект» вверху. Затем нажмите «Свойства» -> Подписать -> Отменить флажок [Подписать манифест ClickOnce] теперь работает

42
задан Community 23 May 2017 в 11:47
поделиться

4 ответа

У вас это почти получилось, просто нужно избежать специальных символов регулярного выражения:

regex = /http\:\/\/www\.youtube\.com\/watch\?v=([\w-]{11})/;

url = 'http://www.youtube.com/watch?v=Ahg6qcgoay4';
id = url.match(regex)[1]; // id = 'Ahg6qcgoay4'

Изменить: Исправить для регулярного выражения soupagain .

63
ответ дан 26 November 2019 в 21:10
поделиться

Не тестировалось, но это должно работать:

/\?v=([a-z0-9\-]+)\&?/i
5
ответ дан 26 November 2019 в 21:10
поделиться

Почему бы вам не взять строку и разделить его

Пример на url

var url = "http://www.youtube.com/watch?p=DB852818BF378DAC&v=1q-k-uN73Gk"

, вы можете сделать разделение как

var params = url.split("?")[1].split("&");

. Вы получите массив строк с параметрами в виде пар значений имени с "=" в качестве разделителя.

17
ответ дан 26 November 2019 в 21:10
поделиться

v - параметр запроса, технически необходимо учитывать случаи ala: http://www.youtube.com / watch? p = DB852818BF378DAC & v = 1q-k-uN73Gk

В .NET я бы рекомендовал использовать System.Web.HttpUtility.ParseQueryString

HttpUtility.ParseQueryString(url)["v"];

И вам даже не нужно проверять ключ, так как он вернет null, если ключа нет в коллекции.

6
ответ дан 26 November 2019 в 21:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: