Как удалить '/' в массиве JSON и получить определенное значение из массива JSON? - PullRequest
0 голосов
/ 09 мая 2019

У меня есть это ниже JSON массив, как удалить '\' в ключах и значениях. [{\ "DOCTYPE \": \ "бумажником \"», "\" идентификатор \ ": \" DW1 \ "", "\" личность \ ": \" бумажник: благодетель: DW1 \ "", "\" имя \ ": \" Благодетель 1 \ "", "\" objType \ ": \" Благодетель \ "", "\" personId \ ": \" person1 \ "", "\" reference \ ": \" \ "", "\" статус \ ": 1", "\" totalDonated \ ": 0", "\" вода \ ": 0}", "{\" DOCTYPE \ ": \" бумажником \ "",» \ "id \": \ "DW2 \" "," \ "identity \": \ "кошелек: благодетель: DW2 \" "," \ "name \": \ "Благодетель 2 \" "," \ "objType \ ": \" благодетелем \ "", "\" PersonId \ ": \" PERSON2 \ "", "\" ссылка \ ": \" \ "", "\" статус \ ": 1", "\" totalDonated \ ": 0", "\" вода \ ": 0}", "{\" Doctype \ ": \" бумажник \ "", "\" идентификатор \ ": \" DW3 \ "", "\" удостоверение личности \ ": \" кошелек: благотворитель: DW3 \ "", "\" name \ ": \" благотворитель 3 \ "", "\" objType \ ": \" благотворитель \ "", "\" personId \ " : \ "person3 \" " "\" ссылка \ ": \" \ "", "\" статус \ ": 1", "\" totalDonated \ ": 0", "\" вода \": 0} " "{\" DOCTYPE \ ": \" бумажником \ "", "\" идентификатор \ ": \" DW4 \ "", "\" личность \ ": \" бумажник: благодетель: DW4 \ ""," \ "name \": \ "Благодетель 4 \" "," \ "objType \": \ "Благодетель \" "," \ "personId \": \ "person4 \" "," \ "reference \": \ "\"», "\" статус \ ": 1", "\" totalDonated \ ": 0", "\" вода \ ": 0}", "{\" DOCTYPE \ ": \" бумажник \ "" , "\" идентификатор \ ": \" DW5 \ "", "\" identity \ ": \" кошелек: благотворитель: DW5 \ "", "\" name \ ": \" благотворитель 5 \ "", "\" objType \ ": \" благотворитель \ "", "\" PersonId \ ": \" person5 \ "", "\" ссылка \ ": \" \ "", "\" статус \ ": 1", "\" totalDonated \ ": 0", "\" вода \ ": 0}]

1 Ответ

0 голосов
/ 09 мая 2019

Это не JSON. Этот код может преобразовать строку в список.

# this is javascript code.
a = '[{\"docType\":\"wallet\"","\"id\":\"DW1\"","\"identity\":\"wallet:benefactor:DW1\"","\"name\":\"benefactor 1\"","\"objType\":\"benefactor\"","\"personId\":\"person1\"","\"reference\":\"\"","\"status\":1","\"totalDonated\":0","\"water\":0}","{\"docType\":\"wallet\"","\"id\":\"DW2\"","\"identity\":\"wallet:benefactor:DW2\"","\"name\":\"benefactor 2\"","\"objType\":\"benefactor\"","\"personId\":\"person2\"","\"reference\":\"\"","\"status\":1","\"totalDonated\":0","\"water\":0}","{\"docType\":\"wallet\"","\"id\":\"DW3\"","\"identity\":\"wallet:benefactor:DW3\"","\"name\":\"benefactor 3\"","\"objType\":\"benefactor\"","\"personId\":\"person3\"","\"reference\":\"\"","\"status\":1","\"totalDonated\":0","\"water\":0}","{\"docType\":\"wallet\"","\"id\":\"DW4\"","\"identity\":\"wallet:benefactor:DW4\"","\"name\":\"benefactor 4\"","\"objType\":\"benefactor\"","\"personId\":\"person4\"","\"reference\":\"\"","\"status\":1","\"totalDonated\":0","\"water\":0}","{\"docType\":\"wallet\"","\"id\":\"DW5\"","\"identity\":\"wallet:benefactor:DW5\"","\"name\":\"benefactor 5\"","\"objType\":\"benefactor\"","\"personId\":\"person5\"","\"reference\":\"\"","\"status\":1","\"totalDonated\":0","\"water\":0}]'

b = a.replace(/\",\"/g,",")
ret = JSON.parse(b)

# the ret is answer.
# python code.
import json, ast
# first, you have to add '' at your json data start and end.
a = '[{\"docType\":\"wallet\"","\"id\":\"DW1\"","\"identity\":\"wallet:benefactor:DW1\"","\"name\":\"benefactor 1\"","\"objType\":\"benefactor\"","\"personId\":\"person1\"","\"reference\":\"\"","\"status\":1","\"totalDonated\":0","\"water\":0}","{\"docType\":\"wallet\"","\"id\":\"DW2\"","\"identity\":\"wallet:benefactor:DW2\"","\"name\":\"benefactor 2\"","\"objType\":\"benefactor\"","\"personId\":\"person2\"","\"reference\":\"\"","\"status\":1","\"totalDonated\":0","\"water\":0}","{\"docType\":\"wallet\"","\"id\":\"DW3\"","\"identity\":\"wallet:benefactor:DW3\"","\"name\":\"benefactor 3\"","\"objType\":\"benefactor\"","\"personId\":\"person3\"","\"reference\":\"\"","\"status\":1","\"totalDonated\":0","\"water\":0}","{\"docType\":\"wallet\"","\"id\":\"DW4\"","\"identity\":\"wallet:benefactor:DW4\"","\"name\":\"benefactor 4\"","\"objType\":\"benefactor\"","\"personId\":\"person4\"","\"reference\":\"\"","\"status\":1","\"totalDonated\":0","\"water\":0}","{\"docType\":\"wallet\"","\"id\":\"DW5\"","\"identity\":\"wallet:benefactor:DW5\"","\"name\":\"benefactor 5\"","\"objType\":\"benefactor\"","\"personId\":\"person5\"","\"reference\":\"\"","\"status\":1","\"totalDonated\":0","\"water\":0}]'
m = a.replace('\\\"', '\"').replace("\",\"", ",")
m = ast.literal_eval(m)
print(m, type(m))
print(json.dumps(m))
output:
([{'status': 1, 'totalDonated': 0, 'name': 'benefactor 1', 'reference': '', 'personId': 'person1', 'docType': 'wallet', 'water': 0, 'objType': 'benefactor', 'id': 'DW1', 'identity': 'wallet:benefactor:DW1'}, {'status': 1, 'totalDonated': 0, 'name': 'benefactor 2', 'reference': '', 'personId': 'person2', 'docType': 'wallet', 'water': 0, 'objType': 'benefactor', 'id': 'DW2', 'identity': 'wallet:benefactor:DW2'}, {'status': 1, 'totalDonated': 0, 'name': 'benefactor 3', 'reference': '', 'personId': 'person3', 'docType': 'wallet', 'water': 0, 'objType': 'benefactor', 'id': 'DW3', 'identity': 'wallet:benefactor:DW3'}, {'status': 1, 'totalDonated': 0, 'name': 'benefactor 4', 'reference': '', 'personId': 'person4', 'docType': 'wallet', 'water': 0, 'objType': 'benefactor', 'id': 'DW4', 'identity': 'wallet:benefactor:DW4'}, {'status': 1, 'totalDonated': 0, 'name': 'benefactor 5', 'reference': '', 'personId': 'person5', 'docType': 'wallet', 'water': 0, 'objType': 'benefactor', 'id': 'DW5', 'identity': 'wallet:benefactor:DW5'}], <type 'list'>)
[{"status": 1, "totalDonated": 0, "name": "benefactor 1", "reference": "", "personId": "person1", "docType": "wallet", "water": 0, "objType": "benefactor", "id": "DW1", "identity": "wallet:benefactor:DW1"}, {"status": 1, "totalDonated": 0, "name": "benefactor 2", "reference": "", "personId": "person2", "docType": "wallet", "water": 0, "objType": "benefactor", "id": "DW2", "identity": "wallet:benefactor:DW2"}, {"status": 1, "totalDonated": 0, "name": "benefactor 3", "reference": "", "personId": "person3", "docType": "wallet", "water": 0, "objType": "benefactor", "id": "DW3", "identity": "wallet:benefactor:DW3"}, {"status": 1, "totalDonated": 0, "name": "benefactor 4", "reference": "", "personId": "person4", "docType": "wallet", "water": 0, "objType": "benefactor", "id": "DW4", "identity": "wallet:benefactor:DW4"}, {"status": 1, "totalDonated": 0, "name": "benefactor 5", "reference": "", "personId": "person5", "docType": "wallet", "water": 0, "objType": "benefactor", "id": "DW5", "identity": "wallet:benefactor:DW5"}]


# the below print from Python interpreter 
# Python 3.6.5 |Anaconda, Inc.| (default, Mar 29 2018, 13:32:41) [MSC v.1900 64 bit (AMD64)] on win32
print(json.dumps(m))
"[{\"docType\":\"wallet\",\"id\":\"DW1\",\"identity\":\"wallet:benefactor:DW1\",\"name\":\"benefactor 1\",\"objType\":\"benefactor\",\"personId\":\"person1\",\"reference\":\"\",\"status\":1,\"totalDonated\":0,\"water\":0},{\"docType\":\"wallet\",\"id\":\"DW2\",\"identity\":\"wallet:benefactor:DW2\",\"name\":\"benefactor 2\",\"objType\":\"benefactor\",\"personId\":\"person2\",\"reference\":\"\",\"status\":1,\"totalDonated\":0,\"water\":0},{\"docType\":\"wallet\",\"id\":\"DW3\",\"identity\":\"wallet:benefactor:DW3\",\"name\":\"benefactor 3\",\"objType\":\"benefactor\",\"personId\":\"person3\",\"reference\":\"\",\"status\":1,\"totalDonated\":0,\"water\":0},{\"docType\":\"wallet\",\"id\":\"DW4\",\"identity\":\"wallet:benefactor:DW4\",\"name\":\"benefactor 4\",\"objType\":\"benefactor\",\"personId\":\"person4\",\"reference\":\"\",\"status\":1,\"totalDonated\":0,\"water\":0},{\"docType\":\"wallet\",\"id\":\"DW5\",\"identity\":\"wallet:benefactor:DW5\",\"name\":\"benefactor 5\",\"objType\":\"benefactor\",\"personId\":\"person5\",\"reference\":\"\",\"status\":1,\"totalDonated\":0,\"water\":0}]"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...