了解如何使用regexp获取zoomLevel,Latitude&来自原始googlemaps链接的经度。 我的想法是,我只是将原始googlemaps v3链接放在我的cms中,我的问题是当我需要在我的cms页面上使用自定义标记呈现它时使用此链接。需要对gmap链接进行一些反向解析。
赞赏所有输入。
原始谷歌链接是这样的:(希望以某种方式使用zoomLevel,Latitude& Longitude - 也许使用regexp) https://maps.google.com/maps?q=barcelona+spain&hl=en&ll=41.385052,2.184906&spn=0.336927,0.883026&sll=57.029521,9.933014&sspn=0.488772,1.766052&t=h&hnear=Barcelona,+Province+of+Barcelona,+Catalonia,+Spain&z=11
所以答案:
str= 'the googlemaps link';
zoomRegex= str.match(/&z=([^&]+)/);
zoomlevel = zoomRegex[1];
var ll = new Array();
LatLongRegex= str.match(/&ll=([^&]+)/);
LatLong = LatLongRegex[1];
ll = LatLong.split(',');
console.log("lat:" + ll[0]+ ", long:" + ll[1] +" - Zoomlevel:"+zoomlevel);
认为这是感谢。 它需要改进吗?。
答案 0 :(得分:2)
您可以解析查询字符串的不同变量,如下所示:
str = "https://maps.google.com/maps?q=barcelona+spain&hl=en&ll=41.385052,2.184906&spn=0.336927,0.883026&sll=57.029521,9.933014&sspn=0.488772,1.766052&t=h&hnear=Barcelona,+Province+of+Barcelona,+Catalonia,+Spain&z=11";
matches = str.match(/&z=([^&]+)/);
zoomlevel = matches[1];
此示例适用于缩放级别,我假设lat / long变量为ll
。如果您需要单独使用纬度和经度,可以在逗号处split
。