Python: Wie kann ich die Trennzeichen in einen String-Split einbinden?

Ich möchte einen String mit mehreren Trennzeichen teilen, aber die Trennzeichen in der Ergebnisliste behalten. Ich denke, dies ist eine nützliche Sache, um einen ersten Schritt zum Parsen einer Formel zu machen, und ich vermute, dass es eine nette Python-Lösung gibt.

Jemand hat in Java eine ähnliche Frage gestelltHier.

Ein typischer Split sieht beispielsweise so aus:

>>> s='(twoplusthree)plusfour'
>>> s.split(f, 'plus')
['(two', 'three)', 'four']

Aber ich suche nach einer guten Möglichkeit, das Plus wieder hinzuzufügen (oder beizubehalten):

['(two', 'plus', 'three)', 'plus', 'four']

Letztendlich würde ich dies gerne für jeden Operator und jede Klammer tun, wenn es also einen Weg gibt, dies zu erreichen

['(', 'two', 'plus', 'three', ')', 'plus', 'four']

Alles auf einen Streich, dann umso besser.

Antworten auf die Frage(5)

Ihre Antwort auf die Frage