![]() |
![]() |
-REN- |
![]()
Post
#1
|
Goście ![]() |
witam
potrzebuje przykladowy ciag "xyzxyzabcabbcabbbcxyzxyz" przetworzyc do postaci tablicy: [1] = abc [2] = abbc [3] = abbbc jak to uczynic? dziekuje za rzeczowe odpowiedzi |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
A wg. jakich regol? Co wyroznia/oddziela te ciagi ktore chcesz wyciagnac?
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 045 Pomógł: 5 Dołączył: 8.11.2004 Skąd: trójmiasto Ostrzeżenie: (0%) ![]() ![]() |
jeśli dobrze zrozumiałem jak trafi na literę a to ma być następny element tablicy, czyli:
a ponieważ poucinało literę "a" ze względu na jej separatorski charakter dokładamy literę "a" na początku każdej tablicy
dodatkowo trzeba zignorować pierwszy i ostatni element powstałej tablicy ponieważ elementy te zawierają ciąg "xyzxy" (można do tego użyć specjalnych funkcji operujących na tablicach.) Ten post edytował php programmer 28.10.2005, 09:13:25 |
|
|
-Gość_REN- |
![]()
Post
#4
|
Goście ![]() |
witam
Generalnie pisze skrypt ktory pobiera strone z internetu ktora zawiera tabele z danymi po czym odczytuje te dane i umieszcza w tablicach lub jednej tablicy dwuwymiarowej do dalszego przetworzenia. Przyklad ktory przytoczylem w pierwszym poscie ma sie do tego tak: - xyz to poczatek i koniec strony ktory nie zawiera zadnych istotnych danych i nas absolutnie nie internesuje - abcabbaabbbc to kolejne wiersze tabeli z rozna zawartoscia (b lub bb lub bbb itd.) ale zaczynajace sie od <tr> (aka a) oraz konczace sie na </tr> (aka (IMG:http://forum.php.pl/style_emoticons/default/cool.gif) Ja do tej pory probowalem cos zdzialac przy pomocy eregi ale chyba ta funkcja dziala troche odmiennie niz sie spodziewalem. Wiec wydumalem, ze zrobie to tak ze: - obetne poczatek lancucha az do pierwszego wystapienia <tr> - obetne koniec lancucha az do ostatniego wystapienia </tr> - pozostaly lancuch podziele funkcja split wedlug klucza "<tr.*></tr>" Pozniej to samo trzeba zrobic z komorkami tablicy. Czy dobrze rozumuje? |
|
|
![]()
Post
#5
|
|
Grupa: Zarząd Postów: 2 277 Pomógł: 6 Dołączył: 27.12.2002 Skąd: Wołów/Wrocław ![]() |
Twój początkowy przyklad nijak sie ma do Twojego problemu (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Wydaje mi się jednak, że w takim przypadku explode nei sprawdzi sie zbyt dobrze. Ja takie rzeczy zawszę robię przy pomocy pregów. Choć, fakt, faktem, czasem wymaga to posiedzenia nad odpowiednimi wyrażeniami, i wogóle - nauczenia się wyrażeń regularnych, ale jest to bardzo dobra "inwestycja". |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 26 Pomógł: 0 Dołączył: 28.10.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
dobra niewazne, kwestia spojrzenia na sprawe czy przyklad sie ma czy nie ma
ja myslalem o uzyciu funkcji split wlasnie ze wzgledu na mozliwosc skorzystania z wyrazen regularnych ale jako ze jestem "leszczem php" chcialem Was prosic o jakies wskazowki jak ugrysc ten temat |
|
|
![]() ![]() |
![]() |
Aktualny czas: 17.09.2025 - 20:51 |