Pieter Opublikowano 15 Sierpnia 2006 Opublikowano 15 Sierpnia 2006 Mam taki kod w php i musze go przetłumaczyć na delphi ale zupełnie nie wiem jak czy możecie mi pomóc? <? for ($i = 1; $i < count ($result_array); $i++) { $player_array = explode (" ", $result_array[$i], 3); $player[$player_counter] = array ( 'player' => ereg_replace ("\^[0-9]{1}", "",str_replace ("\"", "", $player_array[2])), 'ping' => intval ($player_array[1]), 'frags' => intval ($player_array[0])); ?> <tr> <td width="400"><? echo $player[$player_counter][player]; ?></td> <td width="50" align="center"><? echo $player[$player_counter][ping]; ?></td> <td width="50" align="center"><? echo $player[$player_counter][frags]; ?></td> </tr> <? } ?> a wartość m/w tak: 26 45 "^7kaze ^4^4^7+" 31 30 "lol" 28 50 "makavelithedon" 10 43 "King" 3 130 "^7^7^1R^1^1^7ocky"
Marmot Opublikowano 16 Sierpnia 2006 Opublikowano 16 Sierpnia 2006 Pieter, podpowiem ci tak. W Pascal/Delphi tablice deklarujemy w ten sposób: var tablica: array [1..10, 1..10] of byte; 1..10, 1..10 to zakres tablicy, czyli jak w ten sposób zadeklarujemy, możemy dawać [1,1], [10,10], ale już nie możemy np. [23,45]. Jak chcesz przypisać jakąś wartość do tablicy, to wykonujesz to podobnie jak w GML czyli np.: tablica[6,4]:=78; Teraz powinieneś sobie poradzić z przeniesieniem kodu ;) .
Pieter Opublikowano 16 Sierpnia 2006 Autor Opublikowano 16 Sierpnia 2006 akurat o tym wiem co mi napisałeś ale i tak dzięki. A ie mugł byś plzzz ty przenieść mi kod plzzz właściwie chodzi mi tylko o to: $player[$player_counter] = array ( 'player' => ereg_replace ("\^[0-9]{1}", "",str_replace ("\"", "", $player_array[2])), 'ping' => intval ($player_array[1]), 'frags' => intval ($player_array[0])); z resztą sobie poradze :P :) Piernicze chyba sie przeżuce z mojego forum na wasze :/
Marmot Opublikowano 16 Sierpnia 2006 Opublikowano 16 Sierpnia 2006 Nie znam się za bardzo na php, ale może jakbyś wytłumaczył, co robi ten kod: 'player' => ereg_replace ("\^[0-9]{1}", "",str_replace ("\"", "", $player_array[2])), to może bym ci mógł pomóc :/
Zakol Opublikowano 16 Sierpnia 2006 Opublikowano 16 Sierpnia 2006 $string = str_replace('"', '', $player_array[2]); // usuniecie cudzyslowia ( " ) ze zmiennej $value1 = ereg_replace('\^[0-9]{1}', '', $string); // usuniecie wyrazenia '\^[0-9]{1}' ze zmiennej $value2 = intval($player_array[1]); // zamiana zmiennej na typ integer (liczbowy) $value3 = intval($player_array[0]); // j/w $player[$player_counter] = array('player' => $value1, 'ping' => $value2, 'frags' => $value3); // podstawienie tablicy do zmiennej (takze tablicy)
Administratorzy gnysek Opublikowano 17 Sierpnia 2006 Administratorzy Opublikowano 17 Sierpnia 2006 jeżeli chodzi o intval w delphi ma się to tak, natomiast wyrażeń regularnych delphi chyba nie ma... a przynajmniej nie bez dodatków value2:=strtoint(player_array[1]);
Marmot Opublikowano 17 Sierpnia 2006 Opublikowano 17 Sierpnia 2006 Hm, muszę przyznać, że za bardzo nie wiem. Przeszukałem parę książek o Pascalu i nie mogłem znaleźć zamiany znaków, ale jeszcze poszukam. Jak coś wykombinuję to dam znać, chyba, że ktoś inny pomoże. EDIT: Hm, chyba rzeczywiście, Gnysek ma rację. W Pascalu najprawdopodobniej nie ma wyrażeń regularnych.
Administratorzy gnysek Opublikowano 17 Sierpnia 2006 Administratorzy Opublikowano 17 Sierpnia 2006 jest funkcja strreplace chyba (albo inna nazwa), ale na regularnych nie operuje.
Marmot Opublikowano 17 Sierpnia 2006 Opublikowano 17 Sierpnia 2006 Ja zaś znalazłem kod który zamienia string operując na bitach, ale to trochę skomplikowane :P .
Pieter Opublikowano 17 Sierpnia 2006 Autor Opublikowano 17 Sierpnia 2006 Nie musicie sie aż tak bawić poprostu napiszcie mi algorytm gdzieki któremu zamienie taki string: 26 45 "^7kaze ^4^4^7+" 31 30 "lol" 28 50 "makavelithedon" 10 43 "King" 3 130 "^7^7^1R^1^1^7ocky" w array taki : zamienna := player_array[3,1] // w tej sekcji array kryje sie liczba 10 czyli 3 player 1 wartosc zamienna := player_array[3,2] // w tej sekcji array kryje sie liczba 43 czyli 3 player 2 wartosc zamienna := player_array[3,3] // w tej sekcji array kryje sie nazwa "king" czyli 3 player 3 wartosc // 3 player licząc od zera! chyba zrozumieliście?
Zakol Opublikowano 17 Sierpnia 2006 Opublikowano 17 Sierpnia 2006 Co do wyrazen regularnych w Delphi -> http://www.yunqa.de/delphi/regex/ EDIT: xavier, fajnego edita zrobiles :P
Pieter Opublikowano 17 Sierpnia 2006 Autor Opublikowano 17 Sierpnia 2006 Raczej poprostu zmieniłem post :P EDIT: LoL Dzieki znalazłem kilka darmowych fajnych żeczy które też mi się przydadzą :) EDIT 2: Tu chodzi o php a nie o perl albo dfa (??)
Pieter Opublikowano 17 Sierpnia 2006 Autor Opublikowano 17 Sierpnia 2006 to chociaż powiedzcie jak zamienić taki string: 26 45 "^7kaze ^4^4^7+" 31 30 "lol" 28 50 "makavelithedon" 10 43 "King" 3 130 "^7^7^1R^1^1^7ocky" na taki array W GML a z resztą sobie poradze oO zamienna = player_array[3,1] // w tej sekcji array kryje sie liczba 10 czyli 3 player 1 wartosc zamienna = player_array[3,2] // w tej sekcji array kryje sie liczba 43 czyli 3 player 2 wartosc zamienna = player_array[3,3] // w tej sekcji array kryje sie nazwa "king" czyli 3 player 3 wartosc // 3 player licząc od zera! czy to naprawde jest takie trudne??? P.S. SRY ZA DOUBLEPOST!
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się