如何从String中获取少量字符?

时间:2014-09-10 12:35:08

标签: android string substring

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

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

我想制作一个通用字符串,比如说,

String type = "characters up to first colon"

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

调用意图

3 个答案:

答案 0 :(得分:0)

注意:@Alessandro的方法可能更有效率。我只是把那一个放在了我的头顶。

您可以使用此功能将字符添加到第一个':':

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

但我不明白你的目的是什么,这将有助于你找到更好的解决方案。

答案 1 :(得分:0)

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

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

答案 2 :(得分:0)

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

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