【问题标题】:Cutting 2 numbers off a string从一个字符串中删除 2 个数字
【发布时间】:2014-01-22 06:58:15
【问题描述】:

我正在读取一个包含位置和坐标列表的.txt 文件。

每一行都包含一个位置的名称、它的纬度和经度:

Downtown Flaggington 49.46419 -81.995353
Bender and Soonr 40.45519 -88.909353
...

如何将每行的最后 2 个数字去掉,只保留名称?

这就是我所拥有的:

public class GPSFileReverser
{
    public static String reverse(Scanner in, String name, double lat, double lon) throws FileNotFoundException{

        in = new Scanner(new File("gps-and-place.txt"));

        GPSLocation[] gps = new GPSLocation[100];

        for(int i = 0; i < 100; i++) {
            name = in.nextLine();
            name= name.;
            lat = in.nextDouble();
            lon = in.nextDouble();
            GPSLocation currentGPS = new GPSLocation(name, lat, lon);
            gps[i] = currentGPS;


        }
        return name + " " + lat + " \t " + lon;
    }
}

【问题讨论】:

  • 这是什么语言?

标签: java string


【解决方案1】:

使用正则表达式

        String s = "Bender and Soonr 40.45519 -88.909353";
        String pt = "^(.*) (-?\\d*\\.\\d*) (-?\\d*\\.\\d*)$";
        Pattern p = Pattern.compile(pt);
        Matcher m = p.matcher(s);
        if(m.find())
        System.out.println(m.group(1));

【讨论】:

    猜你喜欢
    • 2013-03-02
    • 2023-03-14
    • 1970-01-01
    • 1970-01-01
    • 2023-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多