php - 我可以得到一些调试此正则表达式的帮助吗?

标签 php regex youtube

这是我得到preg_match() [function.preg-match]: Compilation failed: nothing to repeat at offset 77的错误

这是业务:

$youtubeIdPattern = "#(?<=(?:v|i)=)[a-zA-Z0-9-]+(?=&)|(?<=(?:v|i)\/)[^&\n]+|(?<=embed\/)[^\"&\n]+|(?<=??(?:v|i)=)[^&\n]+|(?<=youtu.be\/)[^&\n]+#";
                $youtubeIdMatch = array();
                if ( isset( $regexMatch[0] ) && $regexMatch[0] != "" ) :
                    preg_match($youtubeIdPattern,$regexMatch[0],$youtubeIdMatch);
                endif;

仅供引用,我们正在尝试仅从YouTube URL中获取视频ID。

最佳答案

如果您在一行中有2个问号(?=??(?-您是要把它当作文字问号(\?)吗?

关于php - 我可以得到一些调试此正则表达式的帮助吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15417968/

相关文章:

php - SQL AVG 函数不考虑空单元格

php - NSIS 和 PHP 之间的 Blowfish 加密消息

php - 将循环中的 str_replace() 更改为单个 preg_replace() 调用?

regex - 模式匹配-spark scala RDD

youtube - 嵌入式YouTube视频没有隐藏控件,直到单击该视频为止

jquery - 如何确定我观看过哪些 YouTube 视频?

asp.net - 单击JW Player中的透明背景图像后,无法播放Youtube视频

php - 以这样的方式排列记录,D 类别始终排在第一位,然后 E 和 F 的比例为 1 :1

如果字符串未夹在两个标记之间则要匹配的正则表达式

Java正则表达式格式字符串