【问题标题】:How can i get few characters from String?如何从字符串中获取几个字符?
【发布时间】:2014-09-10 12:35:07
【问题描述】:

我想从字符串中检索几个字符,即基于字符串中使用的第一个冒号 (:) 的字符串数据。字符串数据的可能性是,

String data = "smsto:....."
String data = "MECARD:....."
String data = "geo:....."
String data = "tel:....."
String data = "MATMSG:....."

我想制作一个通用字符串,可以说,

String type = "characters up to first colon"

所以我不必为每种可能性都创建字符串类型,我可以根据类型调用意图

【问题讨论】:

    标签: android string substring


    【解决方案1】:

    看起来你想要一个 uri 的方案。您可以使用Uri.parse(data).getScheme()。这将返回smsto, MECARD, geo, tel 等...

    查看开发者网站:http://developer.android.com/reference/android/net/Uri.html#getScheme()

    【讨论】:

      【解决方案2】:

      注意:@Alessandro 的方法可能更有效。我刚把那个从我的头顶上拿下来。

      您可以使用它来获取字符到第一个 ':':

      String[] parts = data.split(":");
      String beforeColon = parts[0];
      // do whatever with beforeColon
      

      但我不明白您的目的是什么,这将有助于为您提供更好的解决方案。

      【讨论】:

        【解决方案3】:

        您应该使用方法indexOf - 使用该方法可以获得某个char 的索引。然后从该索引开始检索子字符串。例如:

        int index = string.indexOf(':');
        String substring = string.substring(index + 1);
        

        【讨论】:

        • 直到第一个冒号!所以使用重载的 string.substring(0, index);
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-01-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-05-21
        相关资源
        最近更新 更多