an die RegEx-Spezialisten
Achim Schrepfer
- php
Hallo Forumers,
ich möchte gerne aus einfachen Texten mit bestimmten Mustern HTML-Code erzeugen. Unter anderem sollen automatisch Listen generiert werden. Alle Zeilen, die aufeinander folgend mit einem "- " beginnen, sollen zu einer Liste (<ul>) zusammengefasst werden. Also etwa so:
Text blabla...
Aus diesem Text möchte ich mittels regulärer Ausdrücke HTML-Code basteln:
<p>Text blabla...<br>
<ul>
<li>- 1. Listenpunkt</li>
<li>- 2. Listenpunkt</li>
</ul>
weiter im Text<br>
und noch weiter<br>
<ul>
<li>1. LP der zweiten Liste</li>
<li>2. LP der zweiten Liste</li>
</ul>
Jetzt könnte ich das schon irgendwie hinmurksen, aber ich habe keine Ahnung, wie soetwas elegant und v.a. effizient mit PHP zu bewerkstelligen ist. Kann mir jemand von euch helfen?
viele Grüße
Achim Schrepfer
Hi,
ich möchte gerne aus einfachen Texten mit bestimmten Mustern HTML-Code erzeugen.
Regular Expresseions sind nicht für Strukturen geeignet. Gehe den Text auf "traditionelle" Art zeilenweise durch, erkenne Statusänderungen durch Speicherung von Zuständen. Hier kannst Du gerne RegExp einsetzen - das Problem _komplett_ mit diesen zu lösen ist jedoch nicht möglich.
Cheatah
Hi Cheatah,
Regular Expresseions sind nicht für Strukturen geeignet. Gehe den Text auf "traditionelle" Art zeilenweise durch, erkenne Statusänderungen durch Speicherung von Zuständen. Hier kannst Du gerne RegExp einsetzen - das Problem _komplett_ mit diesen zu lösen ist jedoch nicht möglich.
das dachte ich mir schon irgendwie. Hatte halt die Hoffnung, daß jemand was weis, wovon ich nicht zu träumen gewagt hätte *g*. Danke jedenfalls für Deinen Hinweis.
:wq
viele Grüße
Achim Schrepfer
Moin Achim,
Regular Expresseions sind nicht für Strukturen geeignet.
Richtig waere: Regular Expressions sind nicht fuer rekursive
Strukturen geeignet ;) Fuer einfache Gramatiken sind sie
durchaus gedacht und auch entwickelt worden.
Gehe den Text auf "traditionelle" Art zeilenweise durch,
erkenne Statusänderungen durch Speicherung von
Zuständen. Hier kannst Du gerne RegExp einsetzen - das
Problem _komplett_ mit diesen zu lösen ist jedoch nicht
möglich.
ACK.
das dachte ich mir schon irgendwie. Hatte halt die
Hoffnung, daß jemand was weis, wovon ich nicht zu
träumen gewagt hätte *g*.
Nee, da gibts nichts zu wissen :) Regulaere Ausdruecke
koennen nunmal keine rekursiven Strukturen beschreiben.
Gruesse,
CK