Autor | Zpráva | ||
---|---|---|---|
jouda05 Profil * |
#1 · Zasláno: 8. 3. 2011, 20:36:17
Ahoj potřeboval bych data "nalezeno" ktere vrati cyklus for uložit do array s níže popsanou
strukturu abych stim pak dál mohl pracovat: struktura array kterou chci vratit: odkaz href-hodnota data-hodnota --------------------------------------------- - 1 - http:// - data1 - - 2 - http:// - data2 - - 3 - http:// - data3 - --------------------------------------------- kod ze ktereho to potřebuju dostat: function filtruj_kod(odkazy ) var odkazy var reg = /href=\"(.+?)&data=(.+?)\" id=/g; //regexp while(vysledek=reg.exec(odkazy)) { for(i=1;vysledek[j]i++) nalezeno=vysledek[1]; alert(nalezeno); }; } Pak bych třeba mohl na základě nějakých podmínek vzít z toho array řádek s odkazem 1 a spojit "http://" s data1 s jistotou že tyto hodnoty patří k sobě atd. Zkončil jsem u toho že umím vypsat příkazem "nalezeno=vysledek[1];" buď všechny nalezené href-hodnoty nebo příkazem nalezeno=vysledek[2]; všechny "data-hodnoty". Vubec ale netušim jak provest to co jsem popisoval a udělat to a navíc tak aby se stím dalo pracovat i mimo tu funkci. Takže když to shrnu: - chtěl bych uložit do array všechny regexp nalezené výsledky v popsané struktuře a aby se stou array dalo pracovat i mimo tu funkci. Díky moc |
||
jouda05 Profil * |
#2 · Zasláno: 8. 3. 2011, 21:12:35
ještě upřesním že by ta konečná struktura měla vypadat vlastně asi nějak takto:
array1 (href-hodnota1, data-hodnota1) array2 (href-hodnota2, data-hodnota2) array3 (href-hodnota3, data-hodnota3) myslím že teďka to ten kód vyhazuje nějak takto, ale nevím to jistě: array1 (href-hodnota1, href-hodnota2, href-hodnota3) array2 (data-hodnota1, data-hodnota2, data-hodnota3) |
||
_es Profil |
#3 · Zasláno: 8. 3. 2011, 21:22:26 · Upravil/a: _es
jouda05:
Opýtaj sa na niečo konkrétne, alebo sa douč základy JS. Z toho, čo som z toho zmätočného textu pochopil, by si si asi mal niekde nájsť použitie príkazu return a definíciu lokálnych a globálnych premenných. „struktura array“ To je čo? Myslíš polia v JS - typ Array? |
||
jouda05 Profil * |
#4 · Zasláno: 9. 3. 2011, 13:30:24
_es: "struktura array" pro mě znamená uspořádání hodnot v array. Původně jsem to zamýšlel že by to bylo všechno v jedné array která by měla víc dimenzí. Ale myslím že lepší to bude tak když každý jeden odkaz bude v jedné samostatné array.
Co jsem pochopil je to že for cyklus projde pole každé array takže třeba příkaz vysledek[1] vrátí jen hodnoty z array číslo 1. Nicméně pořád netuším jak ty array zkombinovat jak sem již napsal výše: tzn. z tohoto: array1 (href-hodnota1, href-hodnota2, href-hodnota3) array2 (data-hodnota1, data-hodnota2, data-hodnota3) udělat toto: array1 (href-hodnota1, data-hodnota1) array2 (href-hodnota2, data-hodnota2) array3 (href-hodnota3, data-hodnota3) Ukazka myslim přesně ukazuje co potřebuju udělat. |
||
_es Profil |
#5 · Zasláno: 9. 3. 2011, 13:39:55
jouda05:
„Ukazka myslim přesně ukazuje co potřebuju udělat.“ To nie je žiadna „ukážka“. Vyjadri sa nejako normálne, alebo aspoň v súlade s JS terminológiou. Môžeš si v cykle vyrobiť úplne ľubovolné pole, takže nie je vôbec zrozumiteľné, na výrobu akého poľa sa to pýtaš. |
||
petr 6 Profil |
#6 · Zasláno: 9. 3. 2011, 13:42:06
jouda05:
„myslím že teďka to ten kód vyhazuje nějak takto, ale nevím to jistě“ Co třeba ten kód vyzkoušet, a vědět to jistě... |
||
1Pupik1989 Profil |
#7 · Zasláno: 9. 3. 2011, 13:52:58
Pokud to chápu, tak to má být jako vícerozměrné pole? Jako jedno velké a v něm další?
Neco = array ( array (href-hodnota1, data-hodnota1) , array (href-hodnota2, data-hodnota2) , array (href-hodnota3, data-hodnota3) ); Takto nějak? |
||
jouda05 Profil * |
#8 · Zasláno: 9. 3. 2011, 19:06:09
1Pupik1989: trefa:) .. Aspoň někdo :) Takto z toho kodu co mam napsany v prvni postu asi vylezou 2 array ktere myslim vypadaji nejak takto:
var reg = /href=\"(.+?)&data=(.+?)\" id=/g; //vybrat vsechny hodnoty "(.+?)" a vlozit do array //predchozi kod vytvori takoveto 2 array array1 (href-hodnota1, href-hodnota2, href-hodnota3) // = (.+?) array2 (data-hodnota1, data-hodnota2, data-hodnota3) // = (.+?) a for cyklus projde jen to array ktere chci vypsat: vysledek[1]; // = array číslo 1 Dal uz nevim co stim.. Nicmene potreboval bych vytvorit presne takove array jake si napsal. |
||
1Pupik1989 Profil |
#9 · Zasláno: 9. 3. 2011, 20:56:43
vytvoř pole a pak v cyklu for vytvor dalsi (příklad pole[i] = new Array(); )
|
||
Časová prodleva: 13 let
|
0