Hallo Felix,
mache es doch gleich auf der Datenbank. Bei MySQL hieße das Statement:
SELECT
if (length(TEXT_Inhalt)>550,
concat(left(TEXT_Inhalt, 509 + instr(right(left(TEXT_Inhalt,550),40), ' ')),'...'),TEXT_Inhalt) as TEXT_Inhalt
FROM TEXTe
Schönen Gruß aus München
die knappschaft
--
sh:( fo:| ch:? rl:° br:$,<,> n4:& ie:| mo:| va:) de:] zu:) fl:| ss:| ls:[,#
sh:( fo:| ch:? rl:° br:$,<,> n4:& ie:| mo:| va:) de:] zu:) fl:| ss:| ls:[,#