Man nutzt wenn preg_replace() bzw in diesem Fall preg_replace_callback(). Damit kannst du eine RegEx definieren, welche einen Tag oder ein Stück Text (bis zum nächsten Tag) trifft. Für jeden Treffer wird bei preg_replace_callback() eine Callback-Funktion aufgerufen. Dort prüfst du dann ob es ein Tag ist (erstes und letzten Zeichen testen). Wenn es kein Tag ist behandelst du den Treffer mit den schon genannten Funktionen (htmlspecialchars(), ...) und definierst diesen String als Rückgabe der Funktion.
---
Weaverslave