В качестве примера ниже приведена строка:
string = 'a bcde: Title - 1 xyz; dummy-a bcde: Title - 2.1 xyz; dummy-a bcde: Title - 3.1 xyz; dummy-' Мой интересныйсодержимое находится между «a bcde:» и «xyz», поэтому в этом случае я хотел бы получить эти строки ( Title - 1 , Title - 2.1 , Title -3.1 ) и создайте список.
# following is the code
string = 'a bcde:Title - 1 xyz;dummy-a bcde:Title - 2.1 xyz;dummy-a bcde:Title - 3.1 xyz;dummy-'
start = 'a bcde:'
end = ' xyz'
n = [1,2,3]
title_list = []
for index in n:
title = (string.split(start))[index].split(end)[0]
title_list.append(title)
print(title_list)
С текущим кодом он работает как положено, поскольку строка достаточно короткая, я могу определить вхождение (n = [1,2,3]). В то время как строка слишком велика для подсчета, у меня начинаются проблемы. Я ищу способы, которые были бы более эффективными и явными. Я ожидаю создать список строк, содержащий любую информацию между начальным и конечным шаблонами, как показано ниже: ['Title - 1', 'Title - 2.1', 'Title - 3.1', ....]
Спасибо!