Wie man mehrere Lookbehind-Matches gierig macht

Source:    <prefix><content1><suffix1><prefix><content2><suffix2>
Engine:    PCRE

RegEx1:    (?<=<prefix>)(.*)(?=<suffix1>)
RegEx2:    (?<=<prefix>)(.*)(?=<suffix2>)

Result1:   <content1>
Result2:   <content1><suffix1><prefix><content2>

Das gewünschte Ergebnis für RegEx2 ist nur <content2>, aber es ist offensichtlich gierig. Wie mache ich RegEx2 nicht gierig und verwende nur den letzten passenden Lookbehind?

[Ich hoffe, ich habe dies korrekt aus der NoteTab-Syntax übersetzt. Ich mache nicht viel RegEx-Codierung. Die Begriffe <Präfix>, <Inhalt> und <Suffix> sollen nur beliebige Zeichenfolgen darstellen. Nur das "<" im Lookbehind-Befehl "? <=" Ist von Bedeutung.]

Ich vermute, es ist etwas Einfaches, aber nach zu vielen Stunden des Suchens gebe ich es auf, es selbst zu lösen.

Danke für die Hilfe

Kunst

Antworten auf die Frage(3)

Ihre Antwort auf die Frage