【发布时间】:2016-06-24 09:06:47
【问题描述】:
我有一个类似“#123#456 #abc”的字符串。我的要求是根据 # 将字符串划分为标记。 所以我的结果标记是#123,#456,#abc。
android中如何分割字符串?
【问题讨论】:
标签: android string token stringtokenizer
我有一个类似“#123#456 #abc”的字符串。我的要求是根据 # 将字符串划分为标记。 所以我的结果标记是#123,#456,#abc。
android中如何分割字符串?
【问题讨论】:
标签: android string token stringtokenizer
只需使用字符串拆分方法,然后在开头添加#
【讨论】:
这应该对你有帮助
String str = "#123#456#abc";
String[] arr = str.split("#");
for(int i=1;i< arr.length;i++){
System.out.println("#" + arr[i]);
}
输出
#123
#456
#abc
【讨论】:
您需要将String 与正则表达式"#" 分开。我为你的情况写了一个例子。
final String entry = "#123#456#abc";
String[] tokens = entry.split("#");
// Your tokens array will contain {"", "123", "456", "abc"}
// Filter out the empty values and add an '#' before the others
List<String> formattedTokens = new ArrayList<>();
for (String token : tokens) {
if(token.length() > 0){
formattedTokens.add(String.format("#%s", token));
}
}
// Your formattedTokens list will contain {"#123", "#456", "#abc"}
【讨论】:
使用 String.split(#) 将字符串拆分为 string[] 然后将 # 附加到之后的每个字符串
【讨论】:
查看 Rege 了解更多信息 - 您可以设置正则表达式并根据需要解析字符串
【讨论】: