使用Java中的RegEx从String中提取两个double值

tzi*_*ppy 6 java regex

我正在逐行阅读文件,需要从中提取纬度和经度.线条看起来如何:

DE  83543   Rott am Inn Bayern  BY  Oberbayern      Landkreis Rosenheim 47.983  12.1278 
DE  21147   Hamburg Hamburg HH          Kreisfreie Stadt Hamburg    53.55   10  
Run Code Online (Sandbox Code Playgroud)

可以肯定的是,除了表示双打的数字之外,没有数字包围的点.不幸的是,没有点的值,所以最好从字符串末尾检查数字.

谢谢你的帮助!

She*_*ari 4

如果您可以使用java.lang.String#split()

//Split by tab
String values[] = myTextLineByLine.split("\t");
List<String> list = Arrays.asList(values);
//Reverse the list so that longitude and latitude are the first two elements
Collections.reverse(list);

String longitude = list.get(0);
String latitude = list.get(1);
Run Code Online (Sandbox Code Playgroud)