-1

私が文を持っているとすると:

var testsentence = 'This "is" a wonderful "sentence" to "test" "stuff"';

どうすればそのような配列を取得できますか?

var testarray = [ "is", "sentence", "test", "stuff" ]

アップデート

Chromium コンソールを使用して応答を試みていますが、これまでのところすべての応答が返されます。

[""is"", ""sentence"", ""test"", ""stuff""]

試合で引用符を付けたくありません。

4

5 に答える 5

2

To capture the quoted text, but not the quotes...note match won't return groups with the g modifier (see this question), so loop over the matches with something like:

var testsentence = 'This "is" a wonderful "sentence" to "test" "stuff"';
var pattern = /"([^"]+)"/g;
var match;
var testarray = [];
while(match = pattern.exec(testsentence)) {
    testarray.push(match[1]);
}
于 2012-12-12T16:48:06.730 に答える
1
(testsentence.match(/"\w+"/g) || []).map(function(w) {
    return w.slice(1, -1);
});
于 2012-12-12T16:26:23.037 に答える
1
testsentence.match(/"([^"\s])+"/g)

引用されているものすべてを返す必要があり、次のようなことは避けてください""

于 2012-12-12T16:27:04.787 に答える
1
testsentence.match(/"[^"]+"/g);

デモ

于 2012-12-12T16:33:42.033 に答える
0
return testsentence.match(/".+?"/g);
于 2012-12-12T16:29:07.883 に答える