PHP - 如何使用Regex转换YouTube URL

Mit*_*ran 0 php regex youtube url

如何转换下面的YouTube网址

$url1 = http://www.youtube.com/watch?v=136pEZcb1Y0&feature=fvhl
$url2 = http://www.youtube.com/watch?feature=fvhl&v=136pEZcb1Y0
Run Code Online (Sandbox Code Playgroud)

 $url_embedded = http://www.youtube.com/v/136pEZcb1Y0
Run Code Online (Sandbox Code Playgroud)

使用正则表达式?

mqc*_*hen 5

这是一个示例解决方案:

PHP:

preg_replace('/.+(\?|&)v=([a-zA-Z0-9]+).*/', 'http://youtube.com/watch?v=$2', 'http://www.youtube.com/watch?v=136pEZcb1Y0&feature=fvhl');
Run Code Online (Sandbox Code Playgroud)

比赛:

^.+(\?|&)v=([a-zA-Z0-9]+).*$
Run Code Online (Sandbox Code Playgroud)

用...来代替:

http://youtube.com/watch?v=$2
Run Code Online (Sandbox Code Playgroud)

以下是它的工作原理:正则表达式分析器.