Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
4 / 4 / 1
Регистрация: 11.08.2009
Сообщений: 110

Распарсить невалидную json строку

29.06.2010, 11:58. Показов 2017. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Мне необходимо из невалидной json строки получить массив
исходный массив такой
PHP
1
{all:129, data:[ { "id": 856, "kind": "книга", "description": "Книга №1", "solv": false }, {  "id": 852, "kind": "книга", "description": "Книга №2", "solv": false }, { "id": 863, "kind": "книга", "description": "Книга №3", "solv": false }, { "id": 845, "kind": "книга", "description": "Книга №5", "solv": false }, { "id": 876, "kind": "журнал", "description": "Журнал №1", "solv": false}]}
Но для json_decode необходимо чтобы все поля заключались в двойные кавычки...
поэтому с таким массивом он не работает. Какое регулярное выражение можно написать, чтобы пропарсить этот массив? )
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
29.06.2010, 11:58
Ответы с готовыми решениями:

Распарсить json средствами php
Есть такой массив. Необходимо в php достать дату из каждого параметра DATE_TIME_DAT_OD_TIM_P Не понимаю как до него добраться. Буду очень...

Распарсить строку
Добрые день, подскажите пожалуйста, как строку ниже преобразовать в вид: $ms = '1 2 3 24-32 36 35 1 40-44'; // то что есть ...

Распарсить строку
Здравствуйте. у Меня есть $_SERVER . $_SERVER; Я их заношу в 1 переменную и теперь Мне надо найти первый слэш и заменить то что после...

1
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
29.06.2010, 14:57
Напишите класс парсера (или поищите готовый), основанный на рекурсивном спуске.

Добавлено через 2 минуты
JS value
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
object
    {}
    { members } 
members
    pair
    pair , members
pair
    string : value
    identifier : value
array
    []
    [ elements ]
elements
    value 
    value , elements
value
    string
    number
    object
    array
    true
    false
    null
 
string
    строка-в-кавычках
    строка-в-апострофах
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.06.2010, 14:57
Помогаю со студенческими работами здесь

Распарсить строку
Здравствуйте. Помогит пожалуйста с регуляркой. Есть логи которые нужно представить в виде масива, а у меня беда с регулярками(( саму...

Распарсить строку текста
всем привет. дана строка например number="128", X="2.01", Y="1.205" как из строки вывести в php число 128 и координаты? ...

Как распарсить строку:
Здравствуйте! Пользователь вводим в input type="text" функцию (например: 1-sin^2(2*x+5)) Возможно ли распарсить такую строку что бы...

помогите распарсить HTML строку
Здравствуйте. Подскажите какое подобрать регулярное выражение чтобы распарсить вот такие строчки <tr class="G1"...

Распарсить строку с меняющимся символом
Всем привет, столкнулся с одной задачкой, не могу разобраться... По сути, есть json-строка, мне с нее нужно получить одно число, которое...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru