3

任何人都有一个正则表达式从字符串中删除纬度/经度?如:

编号:39.825 -86.88333

4

3 回答 3

8

匹配一个值

-?\d+\.\d+

对于这两个值:

(-?\d+\.\d+)\ (-?\d+\.\d+)

如果字符串始终具有这种形式:

"ID: 39.825 -86.88333".match(/^ID:\ (-?\d+\.\d+)\ (-?\d+\.\d+)$/)
于 2009-01-29T19:47:32.853 回答
4
var latlong = 'ID: 39.825 -86.88333';

var point = latlong.match( /-?\d+\.\d+/g );

//result: point = ['39.825', '-86.88333'];
于 2009-01-29T19:53:33.543 回答
2
function parseLatLong(str) {
    var exp = /ID:\s([-+]?\d+\.\d+)\s+([-+]?\d+\.\d+)/;

    return { lat: str.replace(exp, "$1"), long: str.replace(exp, "$2") };          
}

function doSomething() {
    var res = parseLatLong("ID: 39.825 -86.88333");

    alert('Latitude is ' + res.lat + ", Longitude is " + res.long);
}
于 2009-01-29T20:00:32.017 回答