Вы можете написать метод, используя re.search()
, который возвращает список всех совпадений:
import re
def find_all(regex, text):
match_list = []
while True:
match = re.search(regex, text)
if match:
match_list.append(match.group(0))
text = text[match.end():]
else:
return match_list
Также обратите внимание, что ваше регулярное выражение between_brackets
не позаботится о вложенных скобках:
re.findall('\(.*?\)', "(ac(ssc)xxz)")
>>> ['(ac(ssc)']