<SCRIPT LANGUAGE="JavaScript">
<!--
var str1="guide_12/guide_13+get_data(project_id,user_id,guide_23,guide_45,guide_48)"var a = str1.replace(/get_data\(([^\)]*)\)/g,function(){return arguments[0].replace(/(\w*\_\d+)/g,function(){return "'" + (arguments[1]) +"'";})});alert(a);
//-->
</SCRIPT>
<!--
var str1="guide_12/guide_13+get_data(project_id,user_id,guide_23,guide_45,guide_48)"var a = str1.replace(/get_data\(([^\)]*)\)/g,function(){return arguments[0].replace(/(\w*\_\d+)/g,function(){return "'" + (arguments[1]) +"'";})});alert(a);
//-->
</SCRIPT>
解决方案 »
- ajax动态提取的图片,jquery如何判断图片加载完成
- js中, 如何用键值式存取数据,并检查键值在存在,和遍历键值的数值。
- 急!!!
- 找人修改一正则!
- jsp超连接,急急急急急急
- 如何通过insertadjacenthtml增加<script src='http://**/test.js'></script>
- table 小问题 ,在线等,测试经过马上揭帖
- ---- >.<救命了!■程序完全「不执行」!!~!<javascript>...!
- 这个该怎么取值呢?我的js水平太菜!!请大神指点一二。。
- 请问这段JS代码是如何加密的?该如何解密呢? 在线等
- 恳请JS高手修改一段强弹窗代码,急啊!多谢了
- 我怎样获得页面上照片的当前起始坐标啊(在线等待恩人)
<script language=javascript>
str="guide_12/guide_13+get_data(project_id,user_id,guide_23,guide_45,guide_48)"
re=/(guide_\d{2})([,)])/g
str=str.replace(re,"\'$1\'$2");
alert(str)
</script>
<!--
var str = "guide_12/guide_13+get_data(project_id,user_id,guide_23,guide_45,guide_48)"+
"guide_12/guide_13+get_data(project_id,user_id,guide_23,guide_45,guide_48)";
str = str.replace(/\+(get_data\()/gi, "+report.$1")
.replace(/,(guide_\d+)/gi, ",\'$1\'");
alert(str);
//-->
</SCRIPT>
"+guide_12/guide_13+Combo(report.get_data(project_id,user_id,guide_123,guide_45,guide_48),user_id)";*/
str = str.replace(/\+(get_data\()/gi, "+$1").replace(/,(guide_\d+)/gi, ",\'$1\'");
alert(str);
str="(guide_12+guide_13)/guide_145+report.get_data(project_id,user_id,guide_123,guide_45,guide_48,user_id)"+
"+guide_12/guide_13+Combo(report.get_data(project_id,user_id,guide_123,guide_45,guide_48),user_id)";
re=/(guide_\d{1,})([,)])/g ;
str=str.replace(re,"\'$1\'$2");
alert(str);经过测试和小小的修改, hbhbhbhbhb1021(天外水火(我是SB,我要多努力)) 和 meizz(梅花雪) 都可以通过。另外感谢meizz(梅花雪)的认真,我才发现自己在描述问题中的一个小错误,有段话应该是这样的:“有一个由前台程序组合出来的字串类似于:
str1="guide_12/guide_13+report.get_data(project_id,user_id,guide_23,guide_45,guide_48)"
如何将其替换成如下格式:
str1="guide_12/guide_13+report.get_data(project_id,user_id,'guide_23','guide_45','guide_48')"”,另外括号应该都是英文的。1楼的ttyp(@http://www.cnblogs.com/ttyp/) 给的没法通过测试,我看不大懂也没改成功。不知道1楼的能不能再写一个呢?这样三个人我都可以给分了。正在理解三位使用的方法,虽然还是不大懂,但也有收获:)
这个就通不过
str="(guide_12/guide_13+get_data(project_id,user_id,guide_23,guide_45,guide_48 )+guide_12)"meizz:这个也不能通过
var str = "guide_12/guide_13+get_data(guide_23,project_id,user_id,guide_23,guide_45,guide_48)";
我这个:<SCRIPT LANGUAGE="JavaScript">
<!--
var str1 = "(guide_12+guide_13)/guide_145+report.get_data(project_id,user_id,guide_123,guide_45,guide_48,user_id)"+
"+guide_12/guide_13+Combo(report.get_data(project_id,user_id,guide_123,guide_45,guide_48),user_id)";var a = str1.replace(/get_data\(([^\)]*)\)/g,function(){return arguments[0].replace(/(\w*\_\d+)/g,function(){return "'" + (arguments[1]) +"'";})});alert(a);
//-->
</SCRIPT>那里不能通过?
str="guide_12/guide_13+get_data(project_id,user_id,guide_23 ,guide_45,guide_48)"
re=/(guide_\d{2})(\s*[,)])/g
str=str.replace(re,"\'$1\'$2");
alert(str)
</script>
我是说“经过测试和小小的修改, hbhbhbhbhb1021(天外水火(我是SB,我要多努力)) 和 meizz(梅花雪) 都可以通过。”你的我看得不大懂所以没改,能解析一下吗?帮个忙:)
hbhbhbhbhb1021(天外水火(我是SB,我要多努力)) 的把re=/(guide_\d{2})(\s*[,)])/g改成了re=/(guide_\d{1,})(\s*[,)])/g,这个我说过了是任意数字可以是1位可以是多位。meizz(梅花雪) 的看到了我第一句里有get_data()函数到第二句后变成了report.get_data()这其实是我手误,应该都是report.get_data() 。你的那段针对str = "(guide_12+guide_13)/guide_145+report.get_data(project_id,user_id,guide_123,guide_45,guide_48,user_id)"+"+guide_12/guide_13+Combo(report.get_data(project_id,user_id,guide_123,guide_45,guide_48),user_id)";这个测试串的正则式能不能再发一次??谢了:)
一个正则循环替换的方法,它会把每个匹配的子字符串作为函数的参数,在函数里,你还可以对这个子字符串进行任意的改造,arguments是js自带的对象,表示函数参数列表,arguments[0]就是子字符串,arguments[0]就是分组的第一个字符串,相当$1,依次类推,正则我想不用我解释了吧
准备结贴,因为meizz(梅花雪) 的细心,我发现自己的一些错误。多给些分大家不会介意吧?