Java Split String列表到字符串列表中

时间:2014-12-16 03:35:06

标签: java arrays list split

我正在尝试将配置拆分为数组,但我正在使用 一些问题。

我的配置如下:

Enchantments: Durability:3 Unbreaking:2

我希望我的数组看起来像[0]Durability [1]3 [2]Unbreaking [3]2

但我只能将耐久性纳入[0]和3进入[1] 不会比这更进一步。所有代码都可以使用,这就是您所需要的一切。 救命!代码标签是网站上最糟糕的,我无法得到它们 我的生活,所以这里

if (((String)nodes.get(nodeapi)).contains("enchantments:")){
        System.out.println("found");
        ench = ((String)nodes.get(nodeapi)).replace("enchantments:", "");
        System.out.println(ench);
        String[] enc = ench.split(" ");
        System.out.println("0 " + enc[0]);
        System.out.println("1 " + enc[1]);
        int p = 0;
        for (int i2=0;i2<enc.length*2;i2++){
                p++;
                encha = enc[i2].split(":");
                System.out.println("Passed loop: " + p + " with encha: "+encha[i2]);
        }
}

2 个答案:

答案 0 :(得分:0)

分割字符串时,请尝试使用正则表达式":| "

string.split(":| ");

所以你的代码看起来像是:

String[] enc = ench.split(":| ");

(如果ench为Durability:3 Unbreaking:2

然后数组将是你想要的。

答案 1 :(得分:0)

您可以执行以下操作

String x = "Enchantments: Durability:3 Unbreaking:2";
x = x.replace("Enchantments: ", "");
String[] values = x.split(":|\\s");
for(String val : values)
   System.out.println(val);