var str="{abcd}efg{A{B{C}D{EF}G}H}hijk{lm{nop}}";
var reg=/\{([^\{\}]*(\{[^\{\}]*\})?[^\{\}]*)*\}/g;
var result="";
while(result.length!=str.length){
result=str;
str=str.replace(reg,"{}");
}
alert(result);
解决方案 »
- 60行代码俄罗斯方块[原创]
- js中怎么给属于同一class的按钮设置相同的【mouseenter】效果
- IE8下图片排列有问题,万恶的浏览器呀!!
- AJAX相关的执行顺序问题?很诡异!
- 请mrshelly来接分,“关于html元素除了能在事件中执行脚本外,还能通过其他方式执行脚本吗?的帖子”多谢补充。
- ExtJsJ基于按钮的权限控制问题
- 准备学JS了
- 工作两年了,还是感觉自己的javascript很臭,请高手点睛,如何提高水平?
- 请问关于在子窗口中选择多值以后传递给父窗口中一个多值域的问题!
- 58同城客户手机号中间4位数被隐藏了,求解
- 刚发现一个奇怪的问题label标签和input标签的区别。
- 请教一个有关变量的问题
var str = '{abcd}efg{A{B{C}D{EF}G}H}hijk{lm{nop}}';
var reg = /\{(?:[^\{]*?|.*?\{.*?\}[^{]*)\}/g;
var rs = str.replace(reg,'{}');
alert(rs); // {}efg{}hijk{}
</script>