Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyciągnięcie tekstu z tagów html wyrażeniem regularnym
Forum PHP.pl > Forum > PHP
Octobus
Pobieram curlem stronę wyszukiwań Google skąd chcę pobrać listę stron. Następnie usuwam znaki końca wiersza żeby wyrażenia regularne nie miały z tym problemu. Dostaje więc jedno liniowy kod z którego muszę wyciągnąć adres strony. Tak na szybko wyrażenie regularne które mam to:
  1. /<cite>([^<]+)<\/cite><span class=\"flc\"> \- <a href=\"([^\"]+)\">Kopia<\/a> \- <a href=\"([^\"]+)\">Podobne<\/a><\/span><\/div><\/div><\/li>/i

Jak widać nie jest trudne i wszystko byłoby ok ale pomiędzy <cite> a </cite> gdzie jest adres czasem Google pogrubia strony jeśli w adresie jest wyszukiwane słowo. Wiec jak szukamy np: samochody, dostajemy:
  1. <cite>www.<b>samochody</b>-dostawcze.pl/</cite>

Dla takiego warunku to wyrażenie regularne nie działa i nie wiem jak to ominąć ;/

Dałem
  1. strip_tags($data, '<cite><span><a><div><li>');
i usunęło wszystkie tagi ;/ utknąłem ...

Danie
  1. <cite>.*?</cite>
też nie daje efektów ;/
r4xz
no to może podstawowe rozwiązanie - str_replace i usunąć znaczniki <b> i </b>? wink.gif
Octobus
Miałem jakieś zaćmienie tongue.gif dzieki smile.gif
by_ikar
Kod
<cite>.*?</cite>


No wiesz, takie wyrażenie ci zadziała, znajdzie dane o które ci chodzi, ale nie użyłeś nawiasów, do przechwycenia tych dopasowanych danych. Kłaniają się podstawy wyrażeń niestety wink.gif

A tobie polecam zamiast wyrażeniami się bawić, polecam pobawić się DOM, a jak znasz jquery, to dobre również dla ciebie będzie phpQuery, którego nawet ostatnio użyłem, bo ktoś poprosił o pomoc, żeby wyniki z filestube.com wyciągnąć wyniki.
Agape
Tego dom nie ogarniam:/ nie moge znaleźć jakos przystępnego kursu... PhpQuery sprawdze, nie słyszałem
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.