Страницы

Поиск по вопросам

пятница, 13 марта 2020 г.

Как починить сломанный JSON, без кавычек у ключей?

#java #регулярные_выражения


Есть json, в котором есть ключи не в кавычках("), есть регулярка 

htmlText = htmlText.replaceAll("(\\w+)\\s*\\:", "\"$1\" :");


т.е. из 

name : vasia


должно получиться такое:

"name" : vasia


но, если будет json, где такая строка:

"name":"8A Steamy Romance Novel: I'm In Love With a Robot"


текущая регулярка сделает так:

"name": "8A Steamy Romance "

Novel " : Im In Love With a Robot",


Просьба помочь. Спасибо
    


Ответы

Ответ 1



Предлагаю регулярным выражением выделять не ключ, а ключ + значение и обрамлять ключи в двойные кавычки. Для php регулярка выглядит так /"?(\w+)"?\s*:\s*(".*?"|\w+)/g --> "$1" : $2 Пример тут https://regex101.com/r/rH5qG8/1

Комментариев нет:

Отправить комментарий