Hi!
Habe ich als Ausgangs-URL aber dies hier http://www.youtube.com/watch?v=hYgw7XRf5nc&feature=player_embedded
und versuche mitx=a.match(/\?v=(.*)&?/);
die Id auszulesen, liefert mirRegExp.$1
dagegen "hYgw7XRf5nc&feature=player_embedded" zurück.
Ich versteh nicht, warum. Selbst wenn ich das "&" mit "" maskiere, ändert das nichts am Ergebnis.
Das Muster .* ist gierig. Das &? prüft, ob das & 0 oder einmal vorhanden ist. Am Ende des String ist es nicht vorhanden - Bedingung erfüllt. Und das gierige .* schnappt sich alles dazwischen. Dass du ein & siehst, dürfte damit zusammenhängen, wo du den Wert herbekommst oder wie du ihn ausgibst. Ich würde ja nicht .* suchen sondern alles was kein & ist.
Lo!