seth: Regulärer Ausdruck im Javascript

Beitrag lesen

gudn tach!

ich habe folgende zeichenkette, aus der ich (alle) durch doppelte eckige Klammer eingeschlossene Zeichenketten extrahieren möchte.

'bla bla [[for(var i=0; i<arr.length; i++) { alert(arr[i]); }]]; bla bla --- [[xxxx]]'

Da es positive lookbehind im Javascript nicht gibt (oder?), [...]

ich glaube, die meisten browser koennen das, aber ich weiss es nicht.

loesungsvorschlag (ungetestet):
  str.match(/[[.*?]]/g);

.*? sucht non-greedy.

falls die eckigen klammern wegsollen, kannst du sie entweder nachtraeglich wegschneiden, oder mal
  str.match(/(?:[[).*?(?:]])/g);
probieren. ich weiss aber nicht, ob js non-capturing patterns a la (?:) kennt.

prost
seth