2016-08-02 136 views
-4

我有以下字符串:拆分与大括号字符的字符串

{"attribute1":"value1","attribute2":"value2","attribute3":{"attribute3a":"value3a","attribute3b":"value3b"}},{"attribute1":"value1","attribute2":"value2","attribute3":{"attribute3a":"value3a","attribute3b":"value3b"}},{"attribute1":"value1","attribute2":"value2","attribute3":{"attribute3a":"value3a","attribute3b":"value3b"}} 

我需要拆分这个字符串“”间‘}}’和‘{’,并把每个结果在一个标签。

我想要的结果是:

tab[0] : {"attribute1":"value1","attribute2":"value2","attribute3":{"attribute3a":"value3a","attribute3b":"value3b"}} 
tab[1] : {"attribute1":"value1","attribute2":"value2","attribute3":{"attribute3a":"value3a","attribute3b":"value3b"}} 
tab[2] : {"attribute1":"value1","attribute2":"value2","attribute3":{"attribute3a":"value3a","attribute3b":"value3b"}} 

我该怎么办呢?

+2

这看起来像JSON。我会看看一个JSON阅读器,而不是试图自己解析它 – RNJ

回答

0

下面的代码解决您的问题

public class Test { 

    public static void main(String args[]) { 
     String input = "{\"attribute1\":\"value1\",\"attribute2\":\"value2\",\"attribute3\":{\"attribute3a\":\"value3a\",\"attribute3b\":\"value3b\"}},{\"attribute1\":\"value1\",\"attribute2\":\"value2\",\"attribute3\":{\"attribute3a\":\"value3a\",\"attribute3b\":\"value3b\"}},{\"attribute1\":\"value1\",\"attribute2\":\"value2\",\"attribute3\":{\"attribute3a\":\"value3a\",\"attribute3b\":\"value3b\"}}"; 
     String[] output = input.split("},"); 
     for(String s: output) { 
      System.out.println(s+"}"); 
     } 
    } 

} 

然而,这是不这样做的一种优雅的方式。您应该尝试使用JSON库解析您的输入

+0

谢谢你,它的工作原理! – Grichka

+0

欢迎来到StackOverflow。 upvoting是在这里表示感谢的方式:-) – JavaHopper

+0

是的,我知道但我不能。当我点击向上箭头时,一个弹出窗口显示:“感谢您的反馈!记录下名声低于15的人的投票记录,但不会更改公开显示的帖子分数。” 对不起! :/ – Grichka