如何将字符串(包含位置)转换为数组

How to convert string (containing location) to an array

本文关键字:转换 数组 位置 包含 字符串      更新时间:2023-09-26

>我有一个包含位置的字符串:

var string = "[ 30.733315, 76.77941799999999,City,6,10/28/2013 10:28:39 AM]"

如何将其转换为数组,以便我可以得到

arr[0] = 30.733315,
arr[1] = 76.77941799999999 so on.

String.split()在这里不起作用。

[ 上拆分,],

]必须在拆分正则表达式中转义

var arr = string.split(/[[,']]/).filter(function(el) { return el.trim(); })

需要Array.prototype.filter才能从数组中删除空字符串。

filter的更易读版本是:

arr.filter(function(el) {
  return el.trim().length === 0;
});

跨浏览器解决方案:

var string = "[ 30.733315, 76.77941799999999,City,6,10/28/2013 10:28:39 AM]";
var arr = string.replace(/'[|']/g,'')
                .replace(/ /g,'')
                .split(',');

试试这个

var mystring= "[ 30.733315, 76.77941799999999,City,6,10/28/2013 10:28:39 AM]"
var list = mystring.split(',');

输出:

for(var i = 0; i < list.length; i++)
{
  alert(list[i]);
}

String.split 通过将字符串分隔为子字符串,将字符串对象拆分为字符串数组。

var string = "[ 30.733315, 76.77941799999999,City,6,10/28/2013 10:28:39 AM]";
string = string.replace('[',"['");
string = string.replace(']',"']");
string = string.replace(',',"','","gi");
console.log(string);
arr=eval(string);
console.log(arr);