RegEx, aby wyodrębnić wszystkie dopasowania z ciągu przy użyciu RegExp.exec

Próbuję przeanalizować następujący rodzaj ciągu: [key:"val" key2:"val2"] gdzie w środku znajduje się dowolny klucz: pary „val”. Chcę pobrać nazwę klucza i wartość. Dla ciekawskich próbuję przeanalizować format bazy danych wojownika zadaniowego. Oto mój ciąg testowy: [description:"aoeu"...