Jason hat einen großen JSON, aber er ist nicht lesbar, deshalb muss er ihn verschönern.
Formatierungsspez
Der JSON hat 4 verschiedene Typen:
- Zahlen; Gerade
0-9
- Saiten; Mit doppelten Anführungszeichen versehene
"
Zeichenfolgen mit\
- Arrays; Begrenzt durch
[]
, wobei Elemente durch getrennt sind,
, können Elemente eines dieser Typen sein - Objekte; Durch das
{}
Format wird derkey: value
Schlüssel durch eine Zeichenfolge begrenzt, und der Wert ist einer dieser Typen
Abstand
- Arrays sollten nach den Kommas zwischen Elementen genau ein Leerzeichen haben
- Objekte sollten nach dem nur ein Leerzeichen zwischen dem Schlüssel und dem Wert haben
:
Vertiefung
- Jede Verschachtelungsebene wird 2 mehr als die vorherige eingerückt
- Jedes Objektschlüssel / Wert-Paar steht immer in einer eigenen Zeile. Objekte werden eingerückt
- Ein Array wird über mehrere Zeilen eingerückt, wenn es ein anderes Array oder Objekt enthält. Andernfalls bleibt das Array in einer Zeile
Regeln
- Eingebaute, die diese Aufgabe trivialisieren, sind nicht zulässig.
- Standardschlupflöcher sind wie immer nicht erlaubt
Beispiele
[1,2,3]
[1, 2, 3]
{"a":1,"b":4}
{
"a": 1,
"b": 4
}
"foo"
"foo"
56
56
{"a":[{"b":1,"c":"foo"},{"d":[2,3,4,1], "a":["abc","def",{"d":{"f":[3,4]}}]}]}
{
"a": [
{
"b": 1,
"c": "foo"
},
{
"d": [2, 3, 4, 1],
"a": [
"abc",
"def",
{
"d": {
"f": [3, 4]
}
}
]
}
]
}
[2,["foo123 ' bar \" baz\\", [1,2,3]]]
[
2,
[
"foo123 ' bar \" baz\\",
[1, 2, 3]
]
]
[1,2,3,"4[4,5]"]
[1, 2, 3, "4[4,5]"]
[1,2,3,{"b":["{\"c\":[2,5,6]}",4,5]}]
[
1,
2,
3,
{
"b": ["{\"c\":[2,5,6]}", 4, 5]
}
]