Строка JSON из отформатированной строки Javascript для представления древовидной структуры - PullRequest
0 голосов
/ 14 марта 2011

У меня есть строка JavaScript, представляющая древовидную структуру в виде [a [b, c] d [e]] - это означает, что дерево имеет 2 узла верхнего уровня a и d ( a имеет 2 подузла b и c & d имеет подузел e ).

Я хочу JSON-представление вышеприведенного дерева. (Ключ может совпадать со значением). Я хочу выполнить преобразование программно для любого количества узлов и подузлов.

Я хочу знать, существует ли какой-либо код, который я могу использовать повторно.

1 Ответ

1 голос
/ 14 марта 2011

Отрицательные ответы всегда сложно, но если вы ищете уже существующий код, который превратит эту строку

'[a[b,c]d[e]]'

в эту строку

'{"a": ["b", "c"], "d": ["e"]}'

или эту строку (Я не могу сказать, какой именно)

'{"a": {"b": "b", "c": "c"}, "d": {"e": "e"}}'

или похожий, я думаю, что ответ - нет, вам придется написать преобразование самостоятельно.Это будет не сложно, возможно, даже не нужно использовать regexp, разве что для совпадения идентификаторов.

Вы можете либо перейти на преобразование прямой строки-> строки (опять же, выглядит довольно просто), либо вы можетепреобразуйте вашу запись в объект, а затем используйте JSON.stringify из json2.js или аналогичный, чтобы превратить его в строку JSON.Преимущество последнего метода заключается в том, что вам не нужно беспокоиться о необходимости экранирования значений, поскольку это становится проблемой строкового преобразователя.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...