![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam dość nietypowy problem, z którym nie mogę sobie poradzić, ponieważ nie znam wyrażeń regularnych, a nie podejrzewam, że można go rozwiązać w inny sposób.
Problem jest następujący: Chciałbym z takiego oto ciągu: Cytat Jakiś tekst <sup>napisany w </sup> indeksie <sub>dolnym</sub> uzyskać taką tablicę: Kod Array ( [0] => Jakiś tekst [1] => napisany w [2] => indeksie [3] => dolnym ) Chociaż z drugiej strony przechodząc po takiej tablicy nie będę wiedział w jakim tagu (lub bez) był fragment, więc chyba dobrym pomysłem będzie żeby ciągi zawierały tagi: Kod Array wtedy już da radę takie informacjie wyłuskać.( [0] => Jakiś tekst [1] => <sup>napisany w</sup> [2] => indeksie [3] => <sub>dolnym</sub> ) Tagów może być dowolna ilość, ale zawsze będe pozamykane i nie będą się zagnieżdżały, ani przecinały: <sup><sub></sup></sub> Jeśli ktoś ma pomysł jak ugryść ten temat, bardzo proszę o podzielenie się. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 660 Pomógł: 13 Dołączył: 9.06.2004 Skąd: Wrocław i okolice Ostrzeżenie: (0%) ![]() ![]() |
Na pewno musisz to potraktować wyrażeniami regularnymi
![]() Zobacz tutaj a szczególnie "Grabbing HTML Tags" ![]() Powodzenia -------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Hehe, kolejny raz sam sobie odpowiedam
![]() Oto rozwiązanie (może i da się prościej, ale na razie nie wiem jak):
Wynik: Kod Jakiś tekst <sup>napisany w </sup> indeksie <sub>dolnym</sub>. Tak. Wiecej <sub>tagow</sub>. Jeszcze <sup>wiecej</sup>. I cos na koniec. Array ( [0] => Jakiś tekst [1] => <sup>napisany w </sup> [2] => indeksie [3] => <sub>dolnym</sub> [4] => . Tak. Wiecej [5] => <sub>tagow</sub> [6] => . Jeszcze [7] => <sup>wiecej</sup> [8] => . I cos na koniec. ) P.S. @frelu dzięki za pomoc! |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 188 Pomógł: 0 Dołączył: 23.05.2005 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#5
|
|
![]() Developer Grupa: Moderatorzy Postów: 2 844 Pomógł: 20 Dołączył: 25.11.2003 Skąd: Olkusz ![]() |
czytaj manual'a - zawsze chcialem to napisac moderatorowi
![]() preg_match_all() Tam jest masa przykladow jak sparsowac html'a:) --- Hehe, wiedziałem, że mi ktoś to napisze. ~hwao uwierz mi jest ich masa, ale żaden nie podchodzi pod moje zagadnienie. Zresztą rozwiązanie już mam ![]() ~mike_mech --- ![]() ~mike_mech musialem ![]() Tak sobie mysle czy nie lepiej by bylo uzyc preg_split() i "dzielic" znacznikami html'a ![]() ![]() ![]() pozdrawiam ~hwao |
|
|
![]()
Post
#6
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Cytat(Radarek @ 2006-02-07 11:37:03) Ajaja mike, wlasnie ci napisalem rozwiazanie, ale mnie ubiegles ![]() Tak właśnie czułem że da się jednym. Czas się nauczyć wyrażeń regularnych. [pomógł] <- click |
|
|
![]()
Post
#7
|
|
![]() Developer Grupa: Moderatorzy Postów: 2 844 Pomógł: 20 Dołączył: 25.11.2003 Skąd: Olkusz ![]() |
z glowy. Jezeli chcesz lapac jeszcze html'owskie tagi zapraszam do manuala masz nawet gotowce:) |
|
|
![]()
Post
#8
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
Oj, przestańcie mnie dołować, że to jest takie proste
![]() ![]() Zaczynam się uczyć wyrażeń ![]() |
|
|
![]()
Post
#9
|
|
![]() Developer Grupa: Moderatorzy Postów: 2 844 Pomógł: 20 Dołączył: 25.11.2003 Skąd: Olkusz ![]() |
Hm.. to nie jest proste
![]() Sam napisales Dzielenie ciągu wyrażeniem regularnym to poco go "lapiesz"? Trzeba jechac na logike ![]() |
|
|
![]()
Post
#10
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%) ![]() ![]() |
W sumie ~Radarek podał idealne dla mnie rozwiązanie.
Ale zapytam: ~hwao da się u ciebie tak, żeby tagi zostawały? Chyba nie. A mi potrzebna informacja skąd brały się poszczególne części tekstu. |
|
|
![]()
Post
#11
|
|
![]() Developer Grupa: Moderatorzy Postów: 2 844 Pomógł: 20 Dołączył: 25.11.2003 Skąd: Olkusz ![]() |
oczywiscie ze sie da;)
Pisałem ze zapraszam do Manuala ![]() ![]() Pokaze Ci cos hardcorowego ![]()
Zródło preg_split() - komentarze, autor: Jappie wyplowa Kod Array ( [0] => <html> [1] => <body> [2] => <p class="a<weird>name"> [3] => The classname is not seen as a different tag [4] => </p> [5] => </body> [6] => </html> ) Oczywiscie sa tez dzialajace prosciej i szybciej ![]() --- Chylę czoła. ~nospor wlep mi ostrzeżenie za niewiedzę ![]() ~mike_mech |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 16 Pomógł: 0 Dołączył: 7.02.2006 Ostrzeżenie: (10%) ![]() ![]() |
Mi się najbardziej podoba coś takiego:
Bo ponieważ piłka jest krótka a przy tym wyrażenie w miarę proste. Szacunek dla Radarka. Ten post edytował frelo 7.02.2006, 13:55:03 -------------------- monitorowanie pozycji w google - googlemon.pl
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 05:53 |