![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 0 Dołączył: 19.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
wczoraj długo kombinowałem i nic. Chcę wyciąć załóżmy ze strony wp.pl z diva bxWiadomosci poszczególne tytuły artykułów np. "Rosjanie pozmieniali zeznania?" Jak to zrobić? Pobieram stronę:
a dalej nie mam pojęcia, bo w sieci znalazłem jedynie coś tego typu. Jak to zastosować by wyciąć część strony i wyświetlić?
pozdrawiam |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 151 Pomógł: 36 Dołączył: 1.02.2011 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Użyj wyrażeń regularnych
-------------------- Google Manual
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 0 Dołączył: 19.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
Chciałbym nauczyć się jak to wykonać za pomocą explode.
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Nie da się, a jak już, to tak to pokomplikujesz, że zajeździsz albo siebie, albo procesor, albo pamięć.
-------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 0 Dołączył: 19.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
Podsuniecie jakiś artykuł czy też kurs w którym jest jasno opisane jak wykorzystać do tego wyrażenia regularne?
e: Znalazłem w necie coś takiego:
Wkleiłem sobie żeby sprawdzić i działa. Wyciąga z tamtej strony dane. Problem w tym, że nie rozumiem tego... Nie wiem o co chodzi z tymi znakami - ukośniki, A-Za-z itp. Jak tym wskazuje co ma wyciąć? Ten post edytował markez07 22.07.2011, 14:42:46 |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 151 Pomógł: 36 Dołączył: 1.02.2011 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Wpisz w wyszukiwarkę google frazy "wyrażenia regularne" i masz setki wyników z kursami
-------------------- Google Manual
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Wyrażenia regularne nie nadają się do parsowania HTML-a. Użyj DOMDocument.
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 0 Dołączył: 19.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
Widzę, że każdy coś innego pisze. Jedni, że explode, drudzy wyrażenia regularne, a trzeci jeszcze coś innego.
![]() Znalazłem jakiś artykuł:
ale nadal nie wiem jak pobrać ze strony część która mnie interesuje. Jeżeli da się to proszę to jakoś "łopatologiczniej" mi wytłumaczyć, bo chciałbym się tego nauczyć. |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 1 729 Pomógł: 346 Dołączył: 4.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
Polecam do nauki http://regex.larsolavtorvik.com/
-------------------- |
|
|
![]()
Post
#10
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Albo phpQuery. Wszystko wyciągniesz selektorami CSS, jak w jQuery.
DOMDocument lubi się sypać przy niepoprawnej składni. -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 0 Dołączył: 19.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
Cytat 'zwyczajne' czyli takie jak np.: 'a', 'd', '4', 's' i znaki 'niezwyczajne' - '^', '$', '*', '+', '?', '.', '(', ')', '[', ']', '{', '}', '\\', Moja mózgownica nie pojmuje jak za pomocą tych znaków wskazać konkretny element. Patrząc na inne strony wiem co dany symbol oznacza, ale nie potrafię ogarnąć jak nimi coś wskazać, jakiegoś diva czy wiersz. Ta tematyka chyba jest dość trudna... erix co prostsze w zastosowaniu i wydajniejsze phpQuery czy wyrażenia regularne? Mile widziane tutoriale itp. Ten post edytował markez07 23.07.2011, 12:15:02 |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 1 729 Pomógł: 346 Dołączył: 4.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
Prostsze phpquery, wydajniejsze zwykłe wyrażenia regularne. A prawda jest taka, że wyrażeń regularnych trzeba się samodzielnie nauczyć, ciężko jest je dokładnie wytłumaczyć.
-------------------- |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 0 Dołączył: 19.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
To po preg_match_all to czarna magia. W wierszu 4 chociaż widać class... Cytat Wyrażenia regularne cz 1
– 4:57 pm Napisane w Regex Komentarze są wyłączone Składnia zwyczajne znaki oznaczające wyłącznie siebie samego np. a, z, g, 1, 9, ! (nie mają żadnego innego znaczenia poza znaczeniem podstawowym) znaki specjalne (metaznaki) mają specjalne znaczenie: . dopasowanie dowolnego jednego znaku (łopatologicznie kropka oznacza dowolny jeden znak) do wyrażenia a.a można dopasować aua, ala, ada * dopasowanie zera lub większej liczby elementów poprzedzających do wyrażenia w*akacje można dopasować akacje, wakacje, wwwwakacje + dopasowanie co najmniej jednego poprzedzającego elementu (łopatologicznie 1 lub więcej razy) do wyrażenia nu+da można dopasować nuda, nuuda, nuuuuuuuuuda ? dopasowanie zera lub jednego poprzedzającego elementu (łopatologicznie element poprzedzający może ale nie musi wystąpić) do wyrażenie a?a można dopasować aa, a () zapamiętanie zawartości nawiasu jako elementu wyrażenie mieszkam na ulicy (Wesołej) takie wyrażenie zapamięta wartość w nawiasie czyli Wesołej [] dopasowanie jednego elementu z listy, wszystkie elementy listy muszą znaleźć się pomiędzy [ i ]. Uwaga! Pamiętaj, że każdy znak pomiędzy [] traktowany jest jako pojedynczy znak. do wyrażenia [abcd]+ dopasujemy a, c, ab, acd, dac - tworzenie zakresu w liście czyli tylko pomiędzy [] do wyrażenia [a-p] dopasujemy dowolną literę z przedziału a-p | oznacza lub czyli alternatywę do wyrażenia Kopernik był (kobietą|mężczyzną) dopasujemy zarówno Kopernik był kobietą jak i Kopernik był mężczyzną ^ dopasowanie do początku pola ( łopatologicznie znak następujący po ^ musi być początkiem wyrażenie w którym dokonywujemy dopasowania) do wyrażenia ^Ala dopasujemy Ala ma kota ale już nie dopasujemy Kot ma Ale ^ stosujemy także razem z [] w liście do wyrażenia negacji do wyrażenia [^a]+ dopasujemy jakiekolwiek słowo które nie zawiera litery a np. kret, pies $ dopasowanie do końca pola( łopatologicznie znak poprzedzający $ musi być końcem wyrażenie w którym dokonywujemy dopasowania) do wyrażenia Ale$ dopasujemy zdanie Kot ma Ale ale nie dopasuje już Ale gorąco \ oznacza anulowanie znaczenia wszystkich powyższych symboli (łopatologicznie wszystkie specjalne znaki po poprzedzeniu ich \ „tracą moc” i odzyskują podstawowe znaczenie) \. lub \+ oznaczają tylko i wyłącznie kropkę i plus Symbole formatujące tekst \e oznacza escape \n oznacza nową linię \r oznacza powrót karetki \t oznacza tabulację \a oznacza alarm Wbudowane klasy znaków( występują w parach \mała litera \duża litera, gdzie mała litera np \d (skrót od digit) to dowolna cyfra, a duża litera np \D dowolny znak nie będący \d czyli dowolny znak nie będący cyfrą) \d dowolna cyfra \D dowolny znak nie będący cyfrą \s dowolny biały znak (np spacja) \S dowolny znak nie będący białym znakiem \w dowolny znak należący do słowa(cyfry, litery i znak _) \W dowolny znak nie należący do słowa Pozostałe klasy znaków [[:digit:]] dowolny znak będący cyfrą [[:alpha:]] dowolny znak będący literą [[:alnum:]] dowolny znak będący literą lub cyfrą [[:lower:]] dowolny znak będący małą literą [[:upper:]] dowolny znak będący dużą literą [[:punct:]] dowolny znak interpunkcyjny |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.07.2025 - 16:38 |