Hallo,
Noch interessanter, da ich dies nicht einmal in der JavaScript-Core-Reference finde.
»(x)
Matches x and remembers the match. These are called capturing parentheses.
For example, /(foo)/ matches and remembers 'foo' in "foo bar." The matched substring can be recalled from the resulting array's elements [1], ..., [n] or from the predefined RegExp object's properties $1, ..., $9.«
Dazu auch:
»Seit der JavaScript-Version 1.5 gilt das Auslesen der Treffer geklammerten Ausdrücke über RegExp.$1, RegExp.$2 und so weiter als veraltet. In der Praxis steht allerdings nur bei der im Beispiel verwendeten Methode exec() eine Alternative zur Verfügung.«
http://de.selfhtml.org/javascript/objekte/regexp.htm#allgemeines
Sprich, hier würde man wohl exec() verwenden.
var result = /.*/(.*)..*/g.exec(str);
return result[1].split('_');
Mathias