Мне нужно извлечь два значения, bookId
и author
, из некоторого JSON. Объекты в JSON могут различаться по структуре. Эти два значения не обязательно должны находиться рядом друг с другом, но всегда будут иметь место в порядке bookId
, затем author
. author
необязательно, в этом случае мне нужна пустая строка.
Например, учитывая JSON:
{"items":[
{"bookId":"1", "type":"magazine", "contributors":["bob", "sue", "rita"]},
{"bookId":"2", "type":"novel","author":"josh smith"},
{"bookId":"3", "author":"anne harding"},
{"bookId":"4"}
]}
Мне нужно регулярное выражение для извлечения пар:
{"1", ""}
{"2", "josh smith"}
{"3", "anne harding"}
{"4", ""}
Я перепробовал все способы перестановок, но не могу захватитьи повторяющиеся группы и необязательность авторского поля.