1

我在字符串中有地理坐标,如下所示。

[79.9016492,6.8632761]

我需要将两个数字分隔为双精度值。有人可以帮我写一个正则表达式吗?

4

2 回答 2

6

对于[79.9016492,6.8632761]字符串,它是

String[] oxoy = "[79.9016492,6.8632761]".split("[\\[\\],]"); 
String x = oxoy[1]; // 79.9016492
String y = oxoy[2]; // 6.8632761 

Ideone 演示

转换成双倍

Double x1 = Double.valueOf(x);
Double y1 = Double.valueOf(y);
于 2013-10-19T10:28:57.853 回答
4

不完全是正则表达式,但你可以很容易地得到它,如下所示:

String[] a = "[79.9016492,6.8632761]".split(",");
double x = Double.valueOf(a[0].substring(1));
double y = Double.valueOf(a[1].substring(0,a[1].length()-1));
于 2013-10-19T10:28:46.707 回答