作者sk1765 (鼎玉铉)
看板Ajax
标题Re: [问题] 请问js split的用法 或 regexp的用法
时间Sun Jan 2 13:08:14 2011
※ 引述《lovecomic (睡觉)》之铭言:
: : var vars =new Array('agc','crh','zay','met');
: ^^^^^^^^^
: 这段我要改成这样才能执行
: 不过这不是重点,在此先感谢有回答的各位大大
: 你们提供的程式语法,我都有测试过,也都可以使用^^ 再次感谢
: 另外想再问一个问题,以同样范例为例子
: 假如var a = "agc: 27.35 crh: 111.5 zay: 30.5 Meters (8.2 Meters)";
: 其中 27.35 111.5 30.5 8.2 跟agc 、crh ... 一样都属於字串
: 若是我想要分别读取 27.35 111.5 30.5 8.2 ,match或split的方法是不是又不同了?
先转成Json就容易多了
<script language="javascript" type="text/javascript">
str1 = "agc: 27.35 crh: 111.5 zay: 30.5 Meters (8.2 Meters)";
var c1 = /(([\d.]+)\b)/g;
var c2 = /\(([\d.]+).*\)/g ;
var d1 = str1.replace(c1,"$1,"); //将有数字的地方 替代成 数字,
alert(d1); //agc: 27.35, crh: 111.5, zay: 30.5, Meters (8.2, Meters)
var d2 = d1.replace(c2,":$1"); //将有括号的地方 替代成只剩 :数字
alert(d2); //agc: 27.35, crh: 111.5, zay: 30.5, Meters :8.2
var g="({" + d2 + "})"; //将名值对 加上 {} 变成 Json
alert(g); // ( {agc: 27.35, crh: 111.5, zay: 30.5, Meters : 8.2} )
var k = eval( g ); //将Json evaluate 变成物件
for (obj in k) {
alert(obj + ":" + k[obj]);
}
</script>
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.59.12.83
※ 编辑: sk1765 来自: 61.59.12.83 (01/02 13:09)
1F:→ s25g5d4:eval 恩恩... 01/02 13:12
※ 编辑: sk1765 来自: 59.104.136.130 (01/02 19:49)
※ 编辑: sk1765 来自: 59.104.136.130 (01/02 23:28)