- Argos: Szeretem az ecetfát
- Luck Dragon: Asszociációs játék. :)
- btz: Internet fejlesztés országosan!
- hdanesz: Hyundai Ioniq 28kWh - Első benyomások - második felvonás
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- gban: Ingyen kellene, de tegnapra
- koxx: Bloons TD5 - Tower Defense játék
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
Új hozzászólás Aktív témák
-
cucka
addikt
válasz
PazsitZ #3903 üzenetére
Még korábban én is barkácsoltam ilyen rövidítő kódot, de nem olyan egyszerű (még az enyém sincs kész csak félig-meddig ), mondjuk nálam az is szempont, hogy a szövegben lévő tag-ek is érvényesek maradjanak.
Pedig ez nem túl bonyolult feladat, a lényege, hogy szét kell bontani szavakra a szöveget. Kétfajta szó lesz benne: html tag-ek és sima szavak. Ezután végigmész a szavakon és a következő algoritmust használod (kell hozzá egy verem és fontos a sorrend):
- Ha az aktuális szó nem html tag, akkor kiírod az output-ra és növeled a kiírt karakterek/szavak számát.
- Ha az aktuális szó nyitó és záró tag egyben, akkor kiírod az output-ra. (Például ilyen a <br />, aminek nincs záró tag-je, mert már le van zárva).
- Ha az aktuális szó html nyitó tag, akkor kiírod az output-ra és a html tag-et lerakod a verembe. (tehát csak magát a tag-et, az attribútumokat nem). Példa egy veremre: {'span', 'a', 'div'}
- ha az aktuális szó egy html lezáró tag (pl. </div>), akkor kiírod az output-ra és a veremből addig dobálod ki a tag-eket, amíg ki nem dobtad az aktuális html lezáró tag párját.Az iterációnak akkor van vége, ha elfogytak a szavak, vagy a kiírt karakterek/szavak száma elérte az előre meghatározott limitet. Ezután a veremben maradt elemeket kidobálod és mindegyikre kiírod a hozzá tartozó lezáró html tag-et. (Tehát ha a verem tetején egy div tag van, akkor azt fogod kiírni, hogy </div>, ezután pedig kiszeded a veremből.
Az algoritmus pár lényeges tulajdonsága:
- Megőrzi a html tag-eket.
- Csak a képernyőn látható betűket/szavakat számolja, a html tag-eket nem.
- Ha a szövegedben vannak lezáratlan tag-ek, akkor is működik. Ha a szövegben olyan lezáró tag van, aminek nincs nyitó párja, akkor nem működik helyesen, de kiegészíthető, hogy erre az esetre is jó legyen.
- Az algoritmus kimenetében nem lesznek lezáratlan html tag-ek.
- Bizonyos tag-eket a böngészők automatikusan lezárnak (pl. br, hr), ezek felismerésével ki kell egészíteni az algoritmust.
Új hozzászólás Aktív témák
Hirdetés
- Tarr Kft. kábeltv, internet, telefon
- Wise (ex-TransferWise)
- Honor 200 - kétszázért pont jó lenne
- Revolut
- Hálózati / IP kamera
- Kamionok, fuvarozás, logisztika topik
- Építő/felújító topik
- Honor 200 Pro - mobilportré
- E-roller topik
- Youtube Android alkalmazás alternatívák reklámszűréssel / videók letöltése
- További aktív témák...
- Eladó konfig! Ryzen 7 7800X3D 2TB SSD 64GB DDR5 RX9070XT 16GB!
- Új, makulátlan állapotú Samsung Galaxy Buds FE, fehér, fél év garancia
- Új, makulátlan állapotú Samsung Galaxy Watch7 44mm ezüst, 2 év garancia
- Új, makulátlan állapotú Samsung Z Fold 6 256GB Tengerészkék, független, 2 év garancia
- Használt TP-Link Deco M4 - AC1200 Router (Mesh-ként is használható)
- DELL, HP gyári töltők, sok db. 7,4x5mm - 4,5x3mm + USB-C/Type-C 65W
- PROCASTER 40UNB700 40" 101cm televízió + Számla + Garancia
- Telefon felvásárlás!! iPhone 16/iPhone 16 Plus/iPhone 16 Pro/iPhone 16 Pro Max
- LG 65" C1 OLED - 4K 120Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDMI 2.1 - PS5 és Xbox Ready!
- Csere-Beszámítás! Ryzen 9 9950X Processzor!
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged