我有一个从谷歌地图api返回的字符串。
这是关于纬度和经度的,它的外观是(25.229355, 55.302734)
我想删除(
,)
和space
以使用这两个数字。
我想在数组中使用这两个数字,或者提醒每个数字。
答案 0 :(得分:2)
使用正则表达式解析。这是最简单的情况:
var input = "(25.229355, 55.302734)";
var arr = input.match(/[0-9\.]+/g); alert(arr);
var lat = arr[0];
var long = arr[1];
答案 1 :(得分:2)
str = "(25.229355, 55.302734)";
str =str.replace("(","");
str =str.replace(")","");
str =str.replace(",","");
var n=str.split(" ");
console.log(n);
答案 2 :(得分:2)
好吧,通常如果你想从字符串中提取东西,你需要弄明白:
在您的情况下,您不想要的是括号和空格。在JS中,有一个函数,你可以调用名为replace(substr,replacement)的字符串,它将完全听起来像。
让我们假设你的配对字符串叫做latLong。一旦你删除了你不想要的东西:
latLong.replace(/[()\s]/g, "");
然后你可以使用split()方法基于它们之间的分隔符(逗号)拆分字符串
var latLongArray = latLong.split(",");
split()方法将字符串分成子串数组,由您传递的参数分隔。 所以在这结束时,你的latLongArray将是一个包含2个元素(纬度和经度)的数组!
答案 3 :(得分:0)
试试吧
var x= '(25.229355, 55.302734)'.replace(/[^A-Za-z\s]+/g, '');
// x is : `25.229355 55.302734`
var n=x.split(" ");
alert("Long is" + n[0] + " lat is "+ n[1] )
答案 4 :(得分:0)
你继续说它是一个对象,在这种情况下解析字符串是没有意义的。如果你真的需要一个字符串输出,只需直接从对象中获取数字并连接它。
obj[0]+","+obj[1]
答案 5 :(得分:0)
怎么样......
var coordinatesString, coordinates, longitude, latitude;
coordinatesString = '(25.229355, 55.302734)';
coordinates = coordinatesString.substring(1, coordinatesString.length - 1).split(', ');
longitude = coordinates[0];
latitude = coordinates[1];