正则表达式 匹配对应的括号
利用正则表达式, 把
{abcd}efg{A{B{C}D{EF}G}H}hijk{lm{nop}}
替换成
{}efg{}hijk{}
也就是把最外层的大括号里面的内容清空
lip009
深蓝忧郁
JScript code
cgisir
youfayoutian
发表于:2008-09-24 17:31:207楼 得分:0
仔细研究了下3楼的代码。
虽然实现了我要求的功能,但其实并不是我真正想要的
比如我想把最外层的大括号里面的内容拿出来瞧瞧,
又或者是替换成其它内容,将无法实现
{abcd}efg{A{B{C}D{EF}G}H}hijk{lm{nop}}
替换成
{}efg{}hijk{}
也就是把最外层的大括号里面的内容清空
lip009
深蓝忧郁
JScript code
+展开
-JavaScript
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);
var reg=/\{([^\{\}]*(\{[^\{\}]*\})?[^\{\}]*)*\}/g;
var result="";
while(result.length!=str.length){
result=str;
str=str.replace(reg,"{}");
}
alert(result);
cgisir
+展开
-JavaScript
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{}
var reg = /\{(?:[^\{]*?|.*?\{.*?\}[^{]*)\}/g;
var rs = str.replace(reg,'{}');
alert(rs); // {}efg{}hijk{}
youfayoutian
发表于:2008-09-24 17:31:207楼 得分:0
仔细研究了下3楼的代码。
虽然实现了我要求的功能,但其实并不是我真正想要的
比如我想把最外层的大括号里面的内容拿出来瞧瞧,
又或者是替换成其它内容,将无法实现
加支付宝好友偷能量挖...