Я бы разделил на шаблоне регулярных выражений \s+(?=\(\d+\))
:
inp = "Some sentence. (1) Another Sentence. (2) Final Sentence."
parts = re.split(r'\s+(?=\(\d+\))', inp)
print(parts)
Это печатает:
['Some sentence.', '(1) Another Sentence.', '(2) Final Sentence.']
Используемый здесь шаблон регулярных выражений говорит разделить на один или несколько пробельных символов, которые сопровождаются чем-то вроде (1)
, то есть числом, заключенным в скобки.