Я пытаюсь вырезать последнее слово из значения ключа json, используя .split()[-1]
с pyjq, но не удается с ошибкой: jq: error: syntax error, unexpected '('
Ключ / значение - «субъект»: «У пользователя есть идентификатор пользователя: 2432343f3f-34kfert-343mn5788886»
JSON:
[
{
"id": "The user has user id: 76e195fa-67f1-4ea6-bb0e-29c123855978",
"date": "2018-11-01T08:41:53Z"
},
{
"id": "The user has user id: 195fa76e-67f1-4ea6-bb0e-5597829c1238",
"date": "2018-10-31T14:43:04Z"
}
]
response_read = open('my.json', 'r')
response_read_parsed = json.loads(response_read.read())
rule = pyjq.all('.value[] | { "id": .["subject"].split()[-1], "date": .receivedDateTime }', response_read_parsed)
Но этот подход работает, если я пишу без pyjq
myid= (response_read_parsed['subject'].split()[-1])
print json.dumps(myid, indent=4)
Поскольку есть несколько записей, как указано выше, я решил отфильтровать с помощью pyjq.
Есть ли какая-то ошибка, которую я сделал? Я не могу понять это до сих пор. Пожалуйста помоги. Большое спасибо.