0

我需要捕获大括号之间的所有内容。所以如果我有字符串:

{这} {是} 废话 {测试}

应该返回 [this, is a, test]。

我的代码如下所示:

var myString = "{this} {is a} blah {test}";
var parts = (/{([^{}]+)}/g).exec(myString);

//   parts = [{this}, {is a}, {test}]  


var parts = (/{([^{}]+)}/g).exec(myString);
//   parts = [{this}, this]

有什么想法/帮助吗?

4

2 回答 2

7

我认为您对布丁的要求过高:

var rex = /\{([^}]+)\}/g;
var str = "{this} {is a} blah {test}";
var m;
for (m = rex.exec(str); m; m = rex.exec(str)) {
    console.log(m[1]);
}

实例| 来源

于 2012-12-06T22:29:13.097 回答
-2
var parts = myString.match(/{[^}]+/g).map(function (s) { return s.slice(1); });
于 2012-12-06T22:29:27.410 回答