作者No (you stay there)
看板Ajax
标题Re: [问题] 请问javascript分离字串的问题
时间Wed Sep 30 03:09:29 2009
※ 引述《GN00505257 (...)》之铭言:
: 请问关於javascript分离字串的语法
: 像下列这行字串
: 25.048137, 121.515103
: 若我想分离逗号前跟後该如何分离?
: 网路上查到的方法似乎只能分离固定长度
: 因为座标的长度都不太固定
: 不晓得有没有办法判断指分离逗号前後字串的方法
: 谢谢
提供三种我知道的方法
1. indexOf() 和 substring() 组合
用indexOf()得知逗号在第几个,再用substring()来取得
2. split()
例如你举的例子,就用split(', ')
3. regexp
例如你举的例子,就用match(/[\d]*\.[\d]*/g)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 219.71.4.142
1F:→ TonyQ:regexp 不是用来单独用 , 而是搭配split 用的吧 o,o 09/30 08:40
2F:推 alpe:replace 也可以用 09/30 10:13
3F:→ No:嘎? str.match(/[\d]*\.[\d]*/g) 可以得到那两组字串的阵列呀 09/30 15:12
4F:推 wxyy:如果只是用str.match应该是检查有没有符合regex 还要加点东西 10/10 09:44
5F:→ wxyy:your_str.match(/(\d+\.\d+),\s+(\d+\.\d+)/); 10/10 09:46
6F:→ wxyy:alert(RegExp.$1); // 逗号前面的数字 25.048137 10/10 09:47
7F:→ wxyy:alert(RegExp.$2); // 逗号後面的数字 121.515103 10/10 09:47
8F:→ wxyy:加上 ( ) 指定 group. 然後用 RegExp.$1 取得... 10/10 09:49
9F:→ wxyy:另外就是 RegExp.$1 只能用一次 第二次就失效了 这个要注意 10/10 09:50