有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Extract在安卓上从动态字符串映射url

我有这根绳子

lat:54.897601 lon:4.707973
speed:0.03
T:18/10/11 13:52
http://maps.google.com/maps?f=q&q=54.897601,4.707973&z=16
Pwr: ON Door: OFF ACC: OFF

我想要在字符串中提取http://maps.google.com/maps?f=q&q=54.897601,4.707973&z=16。 信息是动态的。url可以位于消息中的任何位置。如何从http中提取到“空白”或“新行”,这将是链接的结尾?我试了很多次,但都解决不了我的问题。 我在安卓上工作 谢谢!

编辑1: 你好 如果我想从这条消息中提取url

    String text2 = "sensor alarm!\n" +
            "lat:52.897639\n" +
            "long:78.707985\n" +
            "speed:0.05 \n" +
            "T:18/10/11 15:51\n" +
            "http://maps.google.com/maps?f=q&q=52.897639,78.707985&z=16";

\n不起作用

编辑2: 如果我想提取这个字符串的纬度和经度

http://maps.google.com/maps?f=q&q=89.930893,75.721755&z=16

我想指出,纬度和经度永远不会是静止的。也会是

 http://maps.google.com/maps?f=q&q=9.993,7.725&z=16

我想把这个串成lat和lon; 谢谢!


共 (1) 个答案

  1. # 1 楼答案

        String text = "lat:54.897601 lon:4.707973\n" +
                "speed:0.03\n" +
                "T:18/10/11 13:52\n" +
                "http://maps.google.com/maps?f=q&q=54.897601,4.707973&z=16\n" +
                "Pwr: ON Door: OFF ACC: OFF";
    
        String urlStr = text.substring(text.indexOf("http://maps.google.com"), text.indexOf("\n", text.indexOf("http://maps.google.com")) != -1 ? text.indexOf("\n", text.indexOf("http://maps.google.com")) : text.length());
        System.out.println(urlStr);