js 正则替换 字符串如下:function anonymous() { AlaertW('hello'); }需要截取出其中的AlaertW('hello'),直接用replace方法实现,谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 var i = "function anonymous() { AlaertW('hello'); }"; var reg = /\{([^\}]+)\}/g; reg.exec(i); alert(RegExp.$1); 谢谢楼上各位。但为什么我直接在replace中使用就不行了。代码如下,麻烦各位再帮忙指教,谢谢!<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML> <HEAD> <TITLE> New Document </TITLE> <META NAME="Generator" CONTENT="EditPlus"> <META NAME="Author" CONTENT=""> <META NAME="Keywords" CONTENT=""> <META NAME="Description" CONTENT=""> <script type="text/javascript"> function AlertT(str){ var obj = document.getElementById("test"); var onclickstr = obj.onclick.toString(); alert(onclickstr); alert(onclickstr.replace(/\{([^\}]+)\}/g,"$1"));//为什么这个弹出的不对了?? var reg = /\{([^\}]+)\}/g; reg.exec(onclickstr); alert(RegExp.$1); } </script> </HEAD> <BODY> <input type="button" id="test" value="click here" onclick="AlertT('abd')"> </BODY></HTML> <script type="text/javascript"> function AlertT(str){ var obj = document.getElementById("test"); var onclickstr = obj.onclick.toString(); alert(onclickstr); alert(onclickstr.replace(/^[^\{]+\{([^\}]+)\}.*?$/mi,"$1"));//为什么这个弹出的不对了?? var reg = /\{([^\}]+)\}/g; reg.exec(onclickstr); alert(RegExp.$1); } </script>你那个是把 {XXX} 替换成 XXX LZ就不要用replace了,直接 onclickstr = RegExp.$1 就行了<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML> <HEAD> <TITLE> New Document </TITLE> <META NAME="Generator" CONTENT="EditPlus"> <META NAME="Author" CONTENT=""> <META NAME="Keywords" CONTENT=""> <META NAME="Description" CONTENT=""> <script type="text/javascript"> function AlertT(str){ var obj = document.getElementById("test"); var onclickstr = obj.onclick.toString(); var reg = /\{([^\}]+)\}/g;//匹配一对大括号(包含{})括起来的部分 reg.exec(onclickstr); alert(onclickstr); alert(onclickstr.replace(/\{([^\}]+)\}/g,"$1"));//replace,替换:把包含{}的部分替换成{}里面的内容,也就是仅仅去除了{} alert(RegExp.$1);//$1...$9:返回九个在模式匹配期间找到的、最近保存的部分,也就是正则中([^\}]+)匹配的那一段 } </script> </HEAD> <BODY> <input type="button" id="test" value="click here" onclick="AlertT('abd')"> </BODY></HTML> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML> <HEAD> <TITLE> New Document </TITLE> <META NAME="Generator" CONTENT="EditPlus"> <META NAME="Author" CONTENT=""> <META NAME="Keywords" CONTENT=""> <META NAME="Description" CONTENT=""> <script type="text/javascript"> function AlertT(str){ var obj = document.getElementById("test"); var onclickstr = obj.onclick.toString(); alert(onclickstr.replace(/(^[^{]*\{)|(\}[^}]*$)/g,''));//为什么这个弹出的不对了?? } </script> </HEAD> <BODY> <input type="button" id="test" value="click here" onclick="AlertT('abd')"> </BODY></HTML> var str="function anonymous() { AlaertW('hello'); }";var reg = /.+\n?{|}/galert(str.replace(/.+\n?{|}/g,"")); 【求代码】带复选框的树 为什么在IE6 下测试 3级菜单确不展开? 怎样改回.js文件的默认运行方式? javascript 怎样得到 input 中的 onmouseover 中的值? 关干scrollLeft和offsetWidth js如何取得.net控件的值? javascript图片切换的问题。 为何显示不出动态画线 如何使一个table固底? js jQuery.extend 求前台checkbox调用的方法 怎么让一个文本框跟随在另一个文本框后面?
var reg = /\{([^\}]+)\}/g;
reg.exec(i);
alert(RegExp.$1);
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<script type="text/javascript">
function AlertT(str){
var obj = document.getElementById("test");
var onclickstr = obj.onclick.toString();
alert(onclickstr);
alert(onclickstr.replace(/\{([^\}]+)\}/g,"$1"));//为什么这个弹出的不对了??
var reg = /\{([^\}]+)\}/g;
reg.exec(onclickstr);
alert(RegExp.$1);
}
</script>
</HEAD> <BODY>
<input type="button" id="test" value="click here" onclick="AlertT('abd')">
</BODY>
</HTML>
<script type="text/javascript">
function AlertT(str){
var obj = document.getElementById("test");
var onclickstr = obj.onclick.toString();
alert(onclickstr);
alert(onclickstr.replace(/^[^\{]+\{([^\}]+)\}.*?$/mi,"$1"));//为什么这个弹出的不对了??
var reg = /\{([^\}]+)\}/g;
reg.exec(onclickstr);
alert(RegExp.$1);
}
</script>
你那个是把 {XXX} 替换成 XXX
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<script type="text/javascript">
function AlertT(str){
var obj = document.getElementById("test");
var onclickstr = obj.onclick.toString();
var reg = /\{([^\}]+)\}/g;//匹配一对大括号(包含{})括起来的部分
reg.exec(onclickstr);
alert(onclickstr);
alert(onclickstr.replace(/\{([^\}]+)\}/g,"$1"));//replace,替换:把包含{}的部分替换成{}里面的内容,也就是仅仅去除了{}
alert(RegExp.$1);//$1...$9:返回九个在模式匹配期间找到的、最近保存的部分,也就是正则中([^\}]+)匹配的那一段
}
</script>
</HEAD> <BODY>
<input type="button" id="test" value="click here" onclick="AlertT('abd')">
</BODY>
</HTML>
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<script type="text/javascript">
function AlertT(str){
var obj = document.getElementById("test");
var onclickstr = obj.onclick.toString();
alert(onclickstr.replace(/(^[^{]*\{)|(\}[^}]*$)/g,''));//为什么这个弹出的不对了??
}
</script>
</HEAD> <BODY>
<input type="button" id="test" value="click here" onclick="AlertT('abd')">
</BODY>
</HTML>
var reg = /.+\n?{|}/g
alert(str.replace(/.+\n?{|}/g,""));