作者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