我有一个字符串,例如:
String code = new String("[199, 56, 120]")
我的目标是创建只包含[]
和逗号之间的数字的数组和数组;
在这种情况下,它将是例如:
array[0] = 199
array[1] = 56
array[2] = 120
有可能做这样的事吗?
提前致谢。
答案 0 :(得分:4)
您只需使用split功能。
跳过[
和]
,您可以执行以下操作:
String input = "199 56 120";
String[] array = input.split(" ");
如果您真的想要[
和]
,那么您可以使用类似
input.replace("[", "");
input.replace("]", "");
在分割之前去除字符串。
修改强>
无论格式是什么,数字是什么或者数量是多少,您只需根据格式编辑分割定义,所以如果您的情况是,
,那么您只需使用那是分裂参数。
String input = "[number, number, number]";
String sep = ", ";
String fixedInput = input.replace("[", "").replace("]", "");
String[] array = fixedInput.split(sep);
// array[0] contains first number.
// array[1] contains second number.
如果你想要一个int []数组,那么你可以这样做:
int[] intArray = new int[array.length];
for(int i = 0; i < array.length; i++)
{
intArray[i] = Integer.parseInt(array[i]);
}
答案 1 :(得分:1)
如果您想要一个单行解决方案:
String[] array = code.replaceAll("[^\\d ]", "").split(" ");
对replaceAll()
的内联调用会删除非数字/空格。