Regexp + youtube

PHP

5 svar · 486 visningar · startad av tronez

Medlem sedan juli 2001728 inlägg
Trådstart#1

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?

Medlem sedan aug. 20039 340 inlägg
#2

Lägg till flaggan g efter ims.

Medlem sedan juli 2001728 inlägg
#3

Hur menar du? Sökt lite efter regexp och flaggor, men inte hittat något som verkar funka

Medlem sedan feb. 2004489 inlägg
#4

"ims" i i slutet på din sträng är flaggor. I är ignoreCase, M är multiline, S är dotall. G, som du ska lägga till, står för global.

/\[[^\s'\"<>]*youtube.com.*v=([^\s'\"<>]+)\]/imsg

Red: I brist på bättre länk: http://livedocs.adobe.com/flex/201/html/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Book_Parts&file=12_Using_Regular_Expressions_168_10.html

Medlem sedan juli 2001728 inlägg
#5

Har provat det, men fick inte ut nåt alls på det viset, sidan blir bara tom, tar jag däremot bort 'g' så får jag iaf ut nåt på skärmen

Medlem sedan juli 2001728 inlägg
#6
"/\[[^\s'\"<>]*v=([^\s'\"<>]+)\]/ims"

Denna funkar som jag vill!

294 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
119 ms — deklarationer (db)
0 ms — hämta statistik (cache)
169 ms — hämta tråd, inlägg och bilagor (db)
119 ms — ändringar (db)