truncate von langen zeichenketten
cheops
- php
hallo zusammen,
ich habe das problem, dass ich als input einen SEHR langen string erhalte, z.b. "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"... halt nur noch etwas länger :-)
jetzt will ich aber nicht den gesamten string truncaten (was ja trivial wäre), sondern "einfach" nur diese langen ketten in eine harmlose form zurechtschneiden....
ansatzidee: den kompletten text nach leerzeichen exploden (dann habe ich die wörter) und danach jedes wort auf länge prüfen und ggf. zusammenkürzen...
problem: bei großen/langen textblöcken wirds vermutlich recht inperformant
hat da jemand eine idee oder nen gedanklichen ansatz?
danke und gruß
marcus
Hi,
ich habe das problem, dass ich als input einen SEHR langen string erhalte, z.b. "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"... halt nur noch etwas länger :-)
jetzt will ich aber nicht den gesamten string truncaten (was ja trivial wäre), sondern "einfach" nur diese langen ketten in eine harmlose form zurechtschneiden....
Wie sehen denn diese "langen Ketten" aus - sind das normale Woerter, oder wirklich nur wiederholtes Auftreten ein und desselben Zeichens?
hat da jemand eine idee oder nen gedanklichen ansatz?
Regulaere Ausdruecke helfen beim Auffinden der "langen Ketten".
Wie dann "gekuerzt" werden soll, waere noch zu definieren.
MfG ChrisB
hi chrisb,
prinzipiell können es alle möglichen zeichen sein, es geht hierbei nur um die länge, die (wenn nicht autom. umgebrochen) einem das layout recht schnell und böse zerhauen kann...
gruß
cheops
Hi,
prinzipiell können es alle möglichen zeichen sein, es geht hierbei nur um die länge, die (wenn nicht autom. umgebrochen) einem das layout recht schnell und böse zerhauen kann...
Dann suchst du vielleicht auch einfach nur die Funktion wordwrap().
MfG ChrisB
hi chrisb,
prinzipiell können es alle möglichen zeichen sein, es geht hierbei nur um die länge, die (wenn nicht autom. umgebrochen) einem das layout recht schnell und böse zerhauen kann...
Du solltest das nicht serverseitig lösen.
Du redest vermutlich über eine Kommentarfunktion oder ähnliches. Da bietet es sich an, dem Element, in dem der Text ausgegeben wird, einfach eine maximal Breite und Höhe zu geben und "overflow:auto;" zu setzen. Wenn der Besucher dann mutwillig dein Layout zerstören wird, werden stattdessen nur Scrollbalken angezeigt. Das ganze hat außerdem den Vorteil, dass du nicht ausversehen innerhalb eines Wortes umbrichst oder einen langen Link zerschneidest, der dann nicht mehr funktioniert. Und zu guter letzt, spart das ganze natürlich viel Rechenkraft.