новое событие
Информационный поток
Задания вакансии материалы разработки сообщения форума
Форум

Обсуждение к контенту: 1С 7.7 - Разбор строки JSON -> Список значений

    • #1
    • 17.01.2014 21:57
    +1
    • #2
    • 17.01.2014 21:59
    0
    Спасибо. Забираю в копилку.
    Хотя и не сильно замороченный код, но самому такое было бы писать напряжно при необходимости...
    Улыбнул коммент: " ///Когда-нибудь здесь обязательно будет валидатор JSON, использование которого быстрее, чем парсинг JSON"
    Однозначно плюс!
    • #3
    • 22.01.2014 18:55
    0
    Парсить файл лучше методом конечного автомата. На оф. Сайте json для каждого типа данных(объекта,массива,числа,строки) нарисована схема, на основе неё рисуется таблица переходов. И в зависимости какой символ на в ходе переходить в соответствующее состояние. Это более надежно.
    • #4
    • 09.06.2014 16:46
    0
    Добавил в гл. модуль
    получил
    Стр=глУбратьВедущиеСкобки<<?>>(Стр);
    {Глобальный модуль(17993)}: Функция не обнаружена (глУбратьВедущиеСкобки)
    Стр=глУбратьВедущиеСкобки<<?>>(Стр);
    {Глобальный модуль(18039)}: Функция не обнаружена (глУбратьВедущиеСкобки)
    Ключ=глТокен<<?>>(Пара, 1, ":");
    {Глобальный модуль(18053)}: Функция не обнаружена (глТокен)
    Ключ=глУбратьВедущиеСкобки<<?>>(Ключ, """", """");
    {Глобальный модуль(18060)}: Функция не обнаружена (глУбратьВедущиеСкобки)
    Значение=глУбратьВедущиеСкобки<<?>>(Значение, """", """");
    {Глобальный модуль(18061)}: Функция не обнаружена (глУбратьВедущиеСкобки)
    RegExp.IgnoreCase = Ложь<<?>>; //Не игнорировать регистр
    {Глобальный модуль(18073)}: Переменная не определена (Ложь)
    RegExp.Global = Истина<<?>>; //Поиск всех вхождений шаблона
    {Глобальный модуль(18074)}: Переменная не определена (Истина)
    RegExp.MultiLine = Ложь<<?>>; //Многострочный режим
    {Глобальный модуль(18075)}: Переменная не определена (Ложь)
    • #5
    • 11.06.2014 11:19
    • Отредактировано: 11.06.2014 11:44:51
    0
    Этот вариант уже - шлак. Он очень медленный был, просто писал не думая, на скорую руку. Сейчас код уже переписан, стал в три раза короче и в 100 раз быстрее:
    https://gist.github.com/r72cccp/9991957
    • #6
    • 25.03.2019 00:01
    0
    чтобы работал быстро нужно присвоить специальное значение
Для участия в обсуждении Вам необходимо авторизоваться либо   зарегистрироваться