Har ett litet problem med ett regexp
/\[[^\s'\"<>]*youtube.com.*v=([^\s'\"<>]+)\]/ims
Denna kod använder jag för att plocka ut youtube urler och köra in dom i en embed på en sida, problemet är att den bara plockar ut den sista träffen i texten
$text = "text etxtew [http://www.youtube.com/watch?v=p9Zt8mn14hY&NR] mer text textext [http://www.youtube.com/watch?v=p9Zt8mn14hY&NR]";
$text = preg_replace("/\[[^\s'\"<>]*youtube.com.*v=([^\s'\"<>]+)\]/ims", "<object width=\"".$mainwidth."\" height=\"".$mainheight."\"><param name=\"movie\" value=\"http://www.youtube.com/v/\\1&ap=%2526fmt%3D18&hl=en&fs=1&rel=0&border=0 \"></param><embed src=\"http://www.youtube.com/v/\\1&ap=%2526fmt%3D18&hl=en&fs=1&rel=0&border=0 \" type=\"application/x-shockwave-flash\" width=\"".$mainwidth."\" height=\"".$mainheight."\"></embed></object>", $text);
Dvs det jag vill få till är att alla träffar ska göras om, men får inte regexpn att funka som den ska.
Någon som ser nåt uppenbart fel?