Javascript соответствует всему регулярному выражению, которое возвращает массив всех фраз, заключенных в двойные кавычки

У меня есть строка типа '"this one" and "that one"'. Я хочу вернуть массив всех строк с двойными кавычками, т.е. [this one, that one].

До сих пор я пробовал:

var mystring = '"this one" and "that one"';
var m = mystring.match(/"(.*?)"/);
alert(m[1]);

Он отлично работает при обнаружении первого вхождения строки с двойными кавычками, но как мне получить все фразы/слова, заключенные в двойные кавычки?

Ответы

Ответ 1

Я думаю, что вам не хватает модификатора (g) lobal:

var mystring = '"this one" and "that one"';
var m = mystring.match(/"(.*?)"/g);
console.log(m);

Обновление

var mystring = '"this one" and "that one"';
var m = mystring.match(/"(.*?)"/g).map(function(n){ return n.replace(/"/g,'')});
console.log(m);