У меня есть фрейм данных со столбцом, содержащим журналы для заявки на строку. Вот пример журнала:
99645,
\Submitted',
'\Modifications made 2015/01/01',
'x_change0: --> info0',
'y_status1: --> info1',
'z_change2: --> info2',
'y_change3: --> info3',
'\Modifications made 2015/01/03',
'\Modifications made 2015/01/05',
'\Modifications made 2015/01/07',
'w_change0: --> info0',
'a_status1: --> info1',
'\Modifications made 2015/01/07',
.
.
.
Я хочу удалить все строки, за которыми не следуют изменения. Следующее регулярное выражение соответствует содержимому, которое я ищу RegEx101 :
pattern = '(?sm)Modifications\s*((?!Modifications\s*).)*'
re.findall(pattern, dataframe['log'])
Ожидаемый результат на ячейку в кадре данных ['log']:
Modifications made 2015/01/01',
'change0: --> info0',
'change1: --> info1',
'change2: --> info2',
'change3: --> info3',
'Modifications made 2015/01/07',
'change0: --> info0',
'change1: --> info1',
'
Как сделатьУдалить ненужные строки в ячейках? Или как заменить строку внутри ячеек отфильтрованной строкой?