Javascript正则表达式 - 如何在大括号之间获取文本

Was*_*ace 6 javascript regex search extract

我需要在大括号之间获取文本(如果有的话).我确实找到了这个其他帖子,但从技术上讲,它没有正确回答: 正则表达式提取方形或大括号之间的文本

它实际上没有说明如何实际提取文本.所以我到目前为止:

var cleanStr = "Some random {stuff} here";
var checkSep = "\{.*?\}"; 
if (cleanStr.search(checkSep)==-1) { //if match failed
  alert("nothing found between brackets");
} else {
  alert("something found between brackets");
}
Run Code Online (Sandbox Code Playgroud)

然后我如何从字符串中提取"东西"?而且如果我进一步考虑,我如何从这个字符串中提取'stuff'和'sentence':

var cleanStr2 = "Some random {stuff} in this {sentence}";
Run Code Online (Sandbox Code Playgroud)

干杯!

CMS*_*CMS 19

要提取大括号之间的所有匹配项,您可以这样做:

function getWordsBetweenCurlies(str) {
  var results = [], re = /{([^}]+)}/g, text;

  while(text = re.exec(str)) {
    results.push(text[1]);
  }
  return results;
}

getWordsBetweenCurlies("Some random {stuff} in this {sentence}");
// returns ["stuff", "sentence"]
Run Code Online (Sandbox Code Playgroud)