【发布时间】:2009-11-01 23:23:15
【问题描述】:
我正在编写临时 PHP 脚本来更新我的 vBulletin 论坛的 MySQL 数据库。
这就是它的作用。它会找到任何具有 [youtube][/youtube] 代码的条目。然后它必须用指向 youtube 视频的链接替换该代码。
所以,这里是我必须采取的一个例子:
$string = <<<END
Hi everyone! Check out this video that I just found on YouTube!
[youtube]<object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/Md1E_Rg4MGQ&hl=en&fs=1&"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/Md1E_Rg4MGQ&hl=en&fs=1&" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object>[/youtube]
END;
我必须让它看起来像这样:
[URL=http://www.youtube.com/watch/?v=Md1E_Rg4MGQ]http://www.youtube.com/watch/?v=Md1E_Rg4MGQ[/URL]
使用正则表达式让我头疼。我没有足够的正则表达式经验来弄清楚该怎么做。
它必须看起来像这样:
$string = preg_replace("#\[youtube\]?????\[/youtube\]#i", "[URL=http://www.youtube.com/watch?v=$1]http://www.youtube.com/watch?v=$1[/URL]", $string);
请帮忙! ^_^
【问题讨论】: