Javascript-使用regex查找字符串中模式的多个引用

Javascript-使用regex查找字符串中模式的多个引用,javascript,regex,Javascript,Regex,我有一个这种格式的字符串 "{{abc}}, {{def}}, some text {{ghi}}, some other text {{jkl}}" 我想用基于..的字符串替换{{…}}中的每一个字符串(这源于json,不是问题),并坚持使用什么正则表达式模式。我能找到的最接近的是/{(.*)}/gi,但它返回的整个字符串与结尾处的{{和}相同。这是我试过的代码 let str = "{{abc}}, {{def}}, some text {{ghi}}, so

我有一个这种格式的字符串

"{{abc}}, {{def}}, some text {{ghi}}, some other text {{jkl}}"
我想用基于
..
的字符串替换
{{…}}
中的每一个字符串(这源于json,不是问题),并坚持使用什么正则表达式模式。我能找到的最接近的是
/{(.*)}/gi
,但它返回的整个字符串与结尾处的
{{
}
相同。这是我试过的代码

let str = "{{abc}}, {{def}}, some text {{ghi}}, some other text {{jkl}}";
let regex = /{{(.*)}}/gi;
let result;
let indices = [];
let results = [];
while ((result = regex.exec(str))) {
    indices.push(result.index);
    results.push(result[0]);
}

非常感谢您的帮助。

这样就可以了:
\{(.*?\}}

您需要通过
\
转义
}
,还需要设置非贪婪运算符


请参阅:

尝试转义
{
/
}
。i、 e.
\{(.*)\}
也可以尝试
*?
,即
\{(.*)\}