Vielleicht hab ich das Problem etwas vage erklärt. Ich mache eine Serienersetzung in einem längeren Text, der etwa folgende Passage enthält (\n für linebreak):
[..]
\n
- Erstens\n
- Zweitens\n
\n
1. Erster Unterpunkt\n
2. Zweiter Unterpunkt\n
\n - Drittens\n
\n
1. Neue Aufzählung\n
\n - Unterpunkt\n
- Unterpunkt\n
\n
2. Zweiter Punkt der neuen Aufzählung\n
\n
[..]
Herauskommen sollen gültige HTML-Listen (<ol> bzw. <ul>) mit einfach geschachtelten Unterlisten. Die Schritte:
1. Alle "\n\n- ([^\n]+)" werden zu <ul><li>\1</li>
2. Alle "\n\n[0-9]+ ([^\n]+)" werden zu <ol><li>\1</li>
3. Alle "\n- ([^\n]+)" werden zu <li>\1</li>
4. Alle "<ul>(.*)\n\n" werden zu <ul>\1</ul> (das geht gerade noch)
5. Alle "<ol>(.*)\n\n" sollen zu <ol>\1</ol> werden - und das geht eben nicht mehr, wegen der Schachtelung.
regards,
Andreas