Этот вопрос закрыт для ответов, так как повторяет вопрос Как получить данные из определенного текста на Python?
@tmkbl

Как извлечь текст между символами (или тегами) на Python?

Есть текст:
[
Item {
type: 175,
count: 1,
metadata: 0,
nbt: { type: 'compound', name: '', value: [Object] },
name: 'double_plant',
displayName: 'Large Flowers',
stackSize: 64,
slot: 0
},
Item {
type: 171,
count: 1,
metadata: 12,
nbt: null,
name: 'carpet',
displayName: 'Carpet',
stackSize: 64,
slot: 1
},
Item {
type: 54,
count: 1,
metadata: 0,
nbt: { type: 'compound', name: '', value: [Object] },
name: 'chest',
displayName: 'Chest',
stackSize: 64,
slot: 2
}
]

Мне нужно получить все, что между Item { *нужный текст* }. Т.е. из этого текста должен получиться следующий список:
["type: 175,
count: 1,
metadata: 0,
nbt: { type: 'compound', name: '', value: [Object] },
name: 'double_plant',
displayName: 'Large Flowers',
stackSize: 64,
slot: 0",

"type: 171,
count: 1,
metadata: 12,
nbt: null,
name: 'carpet',
displayName: 'Carpet',
stackSize: 64,
slot: 1",

"type: 54,
count: 1,
metadata: 0,
nbt: { type: 'compound', name: '', value: [Object] },
name: 'chest',
displayName: 'Chest',
stackSize: 64,
slot: 2"]

Прошу заметить, что внутри нужных мне элементов так же есть символы "{}", на них обращать внимания не нужно.
Пробовал это: r"{(.*)}", но оно ищет всё, что между {}.
Пожалуйста, помогите. Не понимаю, как составить регулярное выражение для моего случая.
  • Вопрос задан
  • 1423 просмотра
Решения вопроса 2
TalismanChet
@TalismanChet
Лицо зла
(.*) {(.*)}
Ответ написан
seven5674
@seven5674
Старый я уже что бы что-то в себе менять
Item\s\{(.+?slot:.+?)\}
Ответ написан
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы