Christian Kruse: Zeilenumbruch

Beitrag lesen

Hi,

$text=preg_replace("/(.{0,76}) /","\1\n",$text);

Funktioniert nicht richtig: Es ist zwar keine Zeile länger als die angegebene max. Zeilenlänge, doch
dafür habe ich nun zusätzliche Absätze, wo eigentlich gar keine vorgesehen waren.
Woran kann das liegen?

Ganz einfach: der RegExp registriert nicht, wenn ein von Hand gemachter Umbruch erfolgt ;)
Vielleicht schafft das Abhilfe:

$text = ereg_replace("(.[^\n]{0,10})[\r\n]{0,1}","\1\n",$text);

Ich habs getestet und bin so schnell nicht auf Schwachstellen gestoßen; (.[^\n]{0,10}) sagt: 11 Zeichen,
soll heißen, die 10 Steht für gewünschte Zeichen in einer Zeile - 1.

mfg
CK1

<img src="http://wwwtech.de/images/banner.jpg" alt="">
http://wwwtech.de/moorhuhn/