Split eine einfache JSON-Struktur mit einem regulären Ausdruck

Ich habe noch nie verwendet ein regex vor und ich bin auf der Suche für split eine Datei, die eine oder mehrere JSON-Objekte, die JSON-Objekte werden nicht durch ein Komma getrennt. Also ich muss hier unterscheiden Sie zwischen "}{" und halten die beiden geschweiften Klammern. Dies ist, was der string sieht wie folgt aus:

{id:"123",name:"myName"}{id:"456",name:"anotherName"}

Ich würde gerne ein string-array, wie mit string.split()

["{id:"123",name:"myName"}", "{"id:"456",name:"anotherName"}"]
  • mögliche Duplikate von stackoverflow.com/questions/2773710/...
  • Ich weiß nicht, über, dass,, die Frage hat sich JSON-Objekte innerhalb von Objekten, ich bin versucht, etwas zu tun, viel mehr einfache, aber weiß nicht wie. Jetzt bin ich mit dem String[] temp = json.split("\\}\\{"); und es wird die erste in Ordnung, aber ich denke, es löscht einige der geschweiften Klammern, so dass das 2. Objekt ist nicht korrekt.
  • Wenn es irgendeine chance, dass einige string-Wert in das JSON enthalten kann }{, dann ist Ihre einzige chance ist, um wirklich zu analysieren. Sie Parsen kann es entweder als echte, JSON, oder einfach nur analysieren, reicht es, das separate string-Inhalt, eventuell mit doppelten Anführungszeichen auch von anderen, sondern analysieren Sie, müssen Sie.
  • Ich denke, es ist eine schlanke Möglichkeit, dass jemand könnte geben Sie Kommentare ein, mit }{ in es. (es gibt ein Kommentarfeld, in das JSON-Objekt). Jetzt bin ich mit dem String[] temp = json.split("(?=\\{)"); und es funktioniert, aber ich glaube nicht, über dieses Problem zu Ihr gebracht. danke!
  • Zu Menschen, die Abstimmung zu schließen : Lesen Sie Bitte auf beide Fragen. Der andere ist die Teilung in PHP eine komplexe multi-level-JSON-string (das ist kaum möglich, ohne Analyse), während dieser ist über die Spaltung in java einer bestimmten Ebene JSON-string (das ist natürlich machbar).
InformationsquelleAutor Rebeka | 2012-11-14
Schreibe einen Kommentar