谁能转换一下语句

wtadminxjeri 2006-09-05 12:56:17
var a="3A=4A+13A";
.........
...........

中间的省略号转成这样
document.getElementsByName('3A').value[0]=document.getElementsByName('4A').value[0]+
document.getElementsByName('13A').value[0];


备注:其中公式是可以变的有可能是var a="3A=4A+5A+6A+13A";
转换出来的肯定也不一样,还有操作符号可能是加号,也有可能是减号



就是字符的转换,请高手帮助一下
...全文
215 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
wtadminxjeri 2006-09-05
  • 打赏
  • 举报
回复
在说明一下公式还有可能是
3A+4A=5A+6A-7A+.....
请大家想全一点就是要左边的和右边的根据=号拆分
就是中间的符号不知道该怎么半
谁有间接方法试着改一下那个公式也可以
wtadminxjeri 2006-09-05
  • 打赏
  • 举报
回复
顺便解释一下
replace(/(\w+)/g
是什么意思?
wtadminxjeri 2006-09-05
  • 打赏
  • 举报
回复
基本解决问题了还有一点
就是document.getElementsByName('$1')[0].value
这个值我要转为整数相加
我用parseInt报错
不能给涵数返回值赋值
wtadminxjeri 2006-09-05
  • 打赏
  • 举报
回复
我先测试一下,解决就散分
guo9038 2006-09-05
  • 打赏
  • 举报
回复
测试了一下

好像下面这样就能正常转换了
var f = "3A+4A=5A+6A-7A";
f = f.replace(/(\w+)/g, "document.getElementsByName('$1')[0].value");
alert(f);

最简化:eval("3A+4A=5A+6A-7A".replace(/(\w+)/g,"document.getElementsByName('$1')[0].value"));
guo9038 2006-09-05
  • 打赏
  • 举报
回复
楼上的楼上厉害啊 佩服
guo9038 2006-09-05
  • 打赏
  • 举报
回复
var re=new RegExp('(\W)','g');
re.exec(a);
for (i=0;i<RegExp.length;i++)
a.replace(RegExp[i],"').value[0]"+RegExp[i]+"document.getElementsByName('");
eval("document.getElementsByName('"+a+"').value[0];");

上面是自动识别符号的,没测试,理论可行
ice_berg16 2006-09-05
  • 打赏
  • 举报
回复
var f = "3A+4A=5A+6A-7A";
f = f.replace(/(\w+)(?=\+|\-|\*|\/|\=)?/g, "document.getElementsByName('$1')[0].value");
alert(f);
guo9038 2006-09-05
  • 打赏
  • 举报
回复
var a="3A=4A+13A";
.........
...........

中间的省略号转成这样
document.getElementsByName('3A').value[0]=document.getElementsByName('4A').value[0]+document.getElementsByName('13A').value[0];

答案:
a.replace("+","').value[0]+document.getElementsByName('");
a.replace("-","').value[0]-document.getElementsByName('");
a.replace("*","').value[0]*document.getElementsByName('");
a.replace("=","').value[0]=document.getElementsByName('");
var s="";
s="document.getElementsByName('"+a+"').value[0]";
eval(s);
hansonboy 2006-09-05
  • 打赏
  • 举报
回复
还有
document.getElementsByName('4A').value[0]
应该写成这样才对吧
document.getElementsByName('4A')[0].value

hansonboy 2006-09-05
  • 打赏
  • 举报
回复
只在固定规则,按规则拆分再组合, 不难
搞不懂现代人 2006-09-05
  • 打赏
  • 举报
回复
把a这个字符串跟据具体的操作符把他分解成多个数组然后再一个个组合起来,

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧