Встраиваемый код YouTube проверяется с помощью Regex в Javascript или Jquery - PullRequest
0 голосов
/ 06 января 2020

Мне нужно подтвердить, что встроенный код действителен или нет. если у кого-то есть идея, как проверить с помощью регулярных выражений. ниже код проверяет только URL. но я хочу проверить всю строку. Приведенный ниже код не работает.

var P = /^(?:https?:\/\/)?(?:www\.)?(?:youtu\.be\/|youtube\.com\/(?:embed\/|v\/|watch\?v=|watch\?.+&v=))((\w|-){11})(?:\S+)?$/

P.test('<iframe width="560" height="315" src="https://www.youtube.com/embed/_sWcXaic-bw" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>');

Переменная P проверяет только URL.

Работает

P.test('https://www.youtube.com/embed/_sWcXaic-bw');

, но проверяет только URL, не полный тег не работает

1 Ответ

0 голосов
/ 06 января 2020

Я пытаюсь использовать приведенный ниже код, и он работает, но я не знаю, является ли он действительным или нет. Пожалуйста, напишите, если у вас есть какое-либо действительное решение для этого.

var P = /^(?:https?:\/\/)?(?:www\.)?(?:youtu\.be\/|youtube\.com\/(?:embed\/|v\/|watch\?v=|watch\?.+&v=))((\w|-){11})(?:\S+)?$/

var content = '<p>'+'<iframe width="560" height="315" src="https://www.youtube.com/embed/_sWcXaic-bw" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>'+'</p>'

if($(content).find("iframe").length > 0){
   var srccheck =  $(content).find("iframe").attr("src")
    if(P.test(srccheck)){
        console.log("valid")
    }else{
        console.log("not valid")
    }
}else{
    console.log("not valid")
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...