首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

求一正规表达式解决方案

2012-02-02 
求一正规表达式\\{{1}.\\}{1} ,3453454351{2}11{345}$Goodfdf678()) 我是想输出出的结果是2345就是大

求一正规表达式
"\\{{1}.\\}{1} ",

"3453454351{2}11{345}$Goodfdf678()) "

我是想输出出的结果是
2

345

就是大括号内的任意个数的字符,但我上面的那个表达式,出来的结果是{2},{345}
请问怎样把大括号去掉?



[解决办法]
噢。。
<script type= "text/javascript ">
var s = "3453454351{2}11{345}$345}Goodfdf678()) ";
s = s.replace(/.*?\{(\d+)\}[^\{]*/g, "$1, ");
s = s.match(/\d+(?=,)/g);
alert(s);
</script>
JS只有反向预查。所以只能这么取。或者捕获。。。
[解决办法]
str = "3453454351{2}11{345}$Goodfdf678()) ";
re = /[^{]*\{([^}]*)\}/g;
while(re.exec(str))alert(RegExp.$1);

热点排行