Autor | Zpráva | ||
---|---|---|---|
dragon124 Profil |
#1 · Zasláno: 19. 11. 2011, 13:55:22
dobrý den,
potřebuji aby text zadaný do vstupního pole se rozložil do polepo jednom písmenku (např.: "ahoj" se roloží jako pole[0] = a pole[1] = h pole[2] = o pole[3] = j. jak na to? poté potřebuji to zase vypsat takže pole[0] = a pole[1] = h pole[2] = o pole[3] = j se vypíše jako "ahoj" prosímvás jak na to? |
||
okolojdouci Profil * |
#2 · Zasláno: 19. 11. 2011, 14:15:22
|
||
dragon124 Profil |
#3 · Zasláno: 19. 11. 2011, 14:24:13
děkuji, hele ale my sme
Diskuse » ActionScript ve Flashi » rozkouskování textu do pole |
||
okolojdouci Profil * |
#4 · Zasláno: 19. 11. 2011, 14:26:29
!!! pardon, překuk, omlouvám a mizím :-)
|
||
weroro Profil |
#5 · Zasláno: 20. 11. 2011, 02:45:54 · Upravil/a: weroro
V akej verzii ActionScriptu?
Pre verziu 2.0 platí napr toto: var tvojText:String = "ahoj"; var pole:Array = tvojText.split(""); trace(pole[2]); // vypíše znak "o" (bez úvodzoviek) alebo var tvojText:String = "ahoj"; var pole:Array = new Array (); for (var i:Number = 0; i < tvojText.length; i++) { pole[i] = tvojText.substring (i, i + 1); } trace (pole[3]); // vypise znak "j" (bez úvodzoviek) Dá sa to samozrejme aj inak bez použitia pola ale o to si nežiadal :) Ak chceš použiť toto riešenie pre prácu s väčším množstvom textu, tak to nerob. Pole využíva celok pamäťového bloku, takže ak by si mal pole s napr. 10 000 prvkami bolo by to veľmi náročné na pamäť, aj keď je jasné, že pole je prehľadnejšie riešenie. Pri väčšom počte prvkov ukladaj všetko do samostatných premenných. V druhom príklade je schválne použitá funkcia substring(), pretože funkcia substr(), ktorú by možno niekto navrhol vracia rozdiel dvoch posledných pozícií a to je v tomto prípade neželané. Ak by sme si dali vypísať obsah celého pola, naplneného pomocou substring() dostali by sme výpis a,h,o,j ak by sme ale použili pre naplnenie pola funkciu substr() pole by bolo naplnené takto a,ho,oj,j (A potom, že teória je človeku na nič :) ) |
||
dragon124 Profil |
#6 · Zasláno: 20. 11. 2011, 08:06:58
děkuji,
ale jak udělam sklládání textu? |
||
weroro Profil |
#7 · Zasláno: 20. 11. 2011, 12:29:55
Skladanie z čoho?
1. Chceš rozdeliť nejaký text, zamiešať znaky v ňom a následne znovu spojiť do jedného celku? 2. Chceš rozdeliť nejaký text, náhodne alebo podľa nejakých pravidiel vybrať znaky z toho textu, ktoré následne spojíš do jedného celku? Ak chceš možnosť 1 použi funkciu join(); var novy_text:String = pole.join(""); Ak chceš možnosť 2, ja osobne by som použil funkciu charAt(); Toto je použitie pre náhodne generovanie nového reťazca. var textik:String = "diskusia_JakPsatWeb"; // povodny retazec var novy_text:String = ""; // prazdna hodnota noveho retazca var pocet_znakov:Number = 5; // pocet znakov ktore bude obsahovat novy retazec for (var i:Number = 0; i < _root.pocet_znakov; i++) { _root.novy_text += _root.textik.charAt (int (Math.random () * _root.textik.length)); } trace (_root.novy_text); // vypise obsah noveho retazca |
||
Časová prodleva: 13 let
|
0