你好我在这里发现了很多线程,解释了如何从url解析youtube id,但我找不到任何可以从字符串中提取youtube视频id的内容。
我需要一个可以从url
返回youtube视频ID的功能例如我有字符串
> Hello this is my string and this is my youtube video : http://youtube.com/w=abcdef and this is my blog http://stackoverflow.com etc etc.
它应该返回
> Hello this is my string and this is my youtube video : abcdef and this is my blog http://stackoverflow.com etc etc.
尝试此功能但无法正常工作
function linkifyYouTubeURLs(text) {
var re = /https?:\/\/(?:[0-9A-Z-]+\.)?(?:youtu\.be\/|youtube(?:-nocookie)?\.com\S*[^\w\s-])([\w-]{11})(?=[^\w-]|$)(?![?=&+%\w.-]*(?:['"][^<>]*>|<\/a>))[?=&+%\w.-]*/ig;
return text.replace(re,
'<a href="http://www.youtube.com/watch?v=$1">YouTube link: $1</a>');
}
答案 0 :(得分:0)
试试这个:
var re = /(?:youtube\.com\/(?:[^\/]+\/.+\/|(?:v|e(?:mbed)?)\/|.*[?&]v=)|youtu\.be\/)([^"&?\/ ]{11})/i;
<强> REGEX DEMO 强>