我不知道如何朝着这个方向前进。搜索谷歌。 \{[^{}]*\}
得到了正则表达式,但这只匹配了2个级别。
{
{
{
I need regex/javascript to match this text.
}
}
}
{}
的数量可能会有所不同。但我只想要最内在{}
我的实际测试用例。:
for(i=0;i<=50;i++){for(j=0;j<50;j++){$('body').append('hey I am a bug<br>');}}
我需要匹配$('body').append('hey I am a bug<br>');
。但正如我所说,可以有任意数量的嵌套循环。我要求这个帮助其他用户SO
谢谢!
答案 0 :(得分:2)
如何搜索除{
和}
以外的所有字符?
/\{([^\{\}]+)\}/
"{ {} { { text! } } }".match(/\{([^\{\}]+)\}/g)[1] // Returns text !
答案 1 :(得分:2)
这是该任务的快速解析器。
var text = "{ {t} { { text! } } }";
var best = 0, height = 0;
var curText = '';
var winner = '';
for (var i = 0; i < text.length; i++) {
if (text[i] == '{') {
height++;
curText = '';
} else if (text[i] == '}') {
if (height > best) {
winner = curText;
best = height;
}
curText = '';
height--;
} else {
curText += text[i];
}
}
// Answer is in the variable "winner".