我想解析一个数组的浮点数如何:
var array = "-51.2132,0.3100";
我尝试使用match(/\d+/g)
,但我想要浮动
关于regex
提前致谢
答案 0 :(得分:4)
此处不需要正则表达式。您可以先按,
分割坐标以获取值,使用ParseFloat
来投射它们。试试这个:
var loc = "-51.2132,0.3100".split(',');
var lat = parseFloat(loc[0]); // = -51.2132
var lon = parseFloat(loc[1]); // = 0.31
答案 1 :(得分:2)
试试这个:
var floats = array.split(',').map(function(e){return parseFloat(e)});
// result:
[-51.2132, 0.31]
这一行的作用是:首先,在逗号字符上分割array
:
array.split(',') // ["-51.2132", "0.3100"]
然后,用item
替换该数组中的每个parseFloat(item)
:
["-51.2132", "0.3100"].map(function(e){ // For each item in the array
return parseFloat(e); // Cast the current value to a float.
}); // [-51.2132, 0.31]
答案 2 :(得分:0)
答案 3 :(得分:-1)
试试这个:
var array = "-51.2132,0.3100";
var regex = /-?\d+\.?\d*/g;
var items = array.match(regex);
var numbers = items.map(function (item) {
return parseFloat(item);
});