Javascript 如果在获取子字符串时重复,则正则表达式将忽略起始字符

Javascript 如果在获取子字符串时重复,则正则表达式将忽略起始字符,javascript,ios,regex,regex-group,Javascript,Ios,Regex,Regex Group,我面临着使用正则表达式获取子字符串的问题 我想获取大括号中包含的所有子字符串 例如abc{{{data1}xyz{data2}` 我将\{.*?\}用作正则表达式,并将输出作为{{{{data1}{data2} 我希望正则表达式以{data1}{data2}的形式给我输出(data1开头没有额外的大括号) 如何实现这一点?是否有任何正则表达式可以放入?匹配{,后跟单词字符,后跟}: const str='abc{{{{data1}xyz{data2}}'; console.log(str.ma

我面临着使用正则表达式获取子字符串的问题

我想获取大括号中包含的所有子字符串

例如abc{{{data1}xyz{data2}`

我将
\{.*?\}
用作正则表达式,并将输出作为
{{{{data1}{data2}

我希望正则表达式以
{data1}{data2}
的形式给我输出(data1开头没有额外的大括号)


如何实现这一点?是否有任何正则表达式可以放入?

匹配
{
,后跟单词字符,后跟
}

const str='abc{{{{data1}xyz{data2}}';
console.log(str.match(/\{\w+\}/g));
您可以使用
({[^{}]+})
查找匹配项。这将匹配大括号之间的任何内容,而不是
{}

const str='abc{{{{data1}xyz{data2}}';

console.log(str.match(/{{{{{}]+}/g));
我正在尝试用swift语言使用它,但它在那里不起作用。此外,它可以包含大括号中的任何内容,如特殊字符。'abc{{{{data1 data}xyz{data2}}我在swift中工作还需要做其他事情吗?如果我像“\{{{{{{{{}}}+\\\\\\\\\\\\\\\\\\\\}@CodeCracker如果您使用的是swift,为什么在问题中标记[javascript]?