单独的ID或值的字符串使用逗号作为分隔符
问题描述:
我得到单位ID的字符串从这个:单独的ID或值的字符串使用逗号作为分隔符
String units = FolderUtil.getInstance().getUnits(folderId);
,看起来像这样:
[1886bec8-334b-4be0-bcb6-3594c7e454b6, 4818dda2-e124-460d-b910-dc0386ceb138, e95cdfcb-14d6-4065-a69d-8f0213e1f8b4]
我怎么能每个ID分开,以便我可以将每个值单独传递给另一种方法?
答
这是一个使用substring
代替replace
一个有效的解决方案:
String s1 = "[1886bec8-334b-4be0-bcb6-3594c7e454b6, 4818dda2-e124-460d-b910-dc0386ceb138, e95cdfcb-14d6-4065-a69d-8f0213e1f8b4]";
String s2 = s1.substring(1,s1.length()-1);
String[] ss = s2.split(",");
for (String str : ss) {
System.out.println(str.trim());
}
虽然通过查看该字符串,它看起来像一个字符串数组的字符串表示。因此,如果您开发了getUnits
方法,我建议您重构它以返回正确的类型,而不是arrayOfUnits.toString()
的结果。
+0
完美!我无法正确地获得for循环。谢谢! – Jason
答
试试这个:
String units = FolderUtil.getInstance().getUnits(folderId);
String[] unitParts = units.replace("[","").replace("]", "").split(", ")
可能的重复[如何分割逗号分隔的字符串?](http://stackoverflow.com/questions/10631715/how-to-split-a-comma-separated-string) – Ellis