ugrás a tartalomhoz

Szóhossz probléma

sEEcher · 2010. Jún. 4. (P), 09.05
Sziasztok!

Ha nem haragszotok meg, belinkelném a problémám, ugyanis a kérdést a saját weboldalamon is feltettem, ahol a probléma megoldásra vár.

http://skl-projekt.hu/forum/viewthread.php?forum_id=29&thread_id=404&pid=6000#post_6000

Sajnos nem vagyok nagy PHP-s és időm sem engedi, hogy pótolva a hiányosságokat, saját megoldást fejlesszek ki, így a ti segítségeteket kérném. Ha nem vagyok pofátlan, kérlek ne írjatok szimplán függvényneveket, ugyanis azzal én még nem sokra megyek, kivéve, ha alapból megoldja a problémámat. Bocsássatok meg, hogy kész megoldást kérek, de nem is kérném a segítségeteket, ha meg tudnám oldani, még ha sok utánajárásba is kerül. A válaszokat előre is köszönöm!
 
1

Ez például a hosszú szavak

kuka · 2010. Jún. 4. (P), 11.55
Ez például a hosszú szavak első 10 karakterét meghagyja, a többit hárompontra cseréli:

echo preg_replace('/(\w{10})\w+/','\1...','rovid szo hosszuhosszu szo nagyonhosszu szo');
Eredmény:
rovid szo hosszuhoss... szo nagyonhoss... szo

Vagy HTML szöveg esetén a vágott szó teljes alakját berakhatod felhőcskébe:

echo preg_replace('/(\w{10})(\w+)/','<span title="\1\2">\1...</span>','rovid szo hosszuhosszu szo nagyonhosszu szo');
Eredmény:
rovid szo <span title="hosszuhosszu">hosszuhoss...</span> szo <span title="nagyonhosszu">nagyonhoss...</span> szo

Persze a másik ötleted, a hosszú szavak szóközökkel való felaprítása sem sokkal bonyolultabb. Ez minden 10 karakter után beszúr egy szóközt:

echo preg_replace('/(\w{10})/','\1 ','rovid szo hosszuhosszuhosszuhosszu szo nagyonnagyonnagyonhosszu szo');
Eredmény:
rovid szo hosszuhoss zuhosszuho sszu szo nagyonnagy onnagyonho sszu szo
2

...

sEEcher · 2010. Jún. 4. (P), 12.39
Nagyon köszönöm a segítséget, működik!