Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Wyciąganie adresu z treści
Forum PHP.pl > Forum > Przedszkole
-Masterek-
Witam,
mam pewien problem z którym nie mogę sobie poradzić.
Mam pewien skrypt curl, który wchodzi na stronę, wysyła posta, a później ma pobrać odpowiedź.
Sprawa wygląda tak, wszystko ładnie się wysyła, problem jest z pobraniem odpowiedzi.
Odpowiedzią jest taka treść:
  1. <h4>Wiadomość wysłano, Twój topic znajdziesz pod</h4> <a href="/jakas-podstrona.html">tym adresem</a>

Ja chciałbym wyświetlić tylko konkretnego linka, a następnie go dopisać do pliku (w następnej linijce, gdyż będzie kilka takich linków). Wiem, że trzeba użyć funkcji preg_match, tylko, że nie mogę sobie poradzić. Mam coś takiego:
  1. $wynik = '<h4>Wiadomość wysłano, Twój topic znajdziesz pod</h4> <a href="/jakas-podstrona.html">tym adresem</a>';
  2. preg_match_all('(<h4>(.*)</h4><a href="\">(.*)</a>)siU',$wynik,$adresy);
  3. $tab = array ($adresy);
  4. echo '<pre>';
  5. print_r($tab);
  6. echo '</pre>';

ale coś mi to nie działa.
Pomoże ktoś?
abort
preg_match_all('|<h4>(.*)</h4> <a href="(.*)">|',$wynik,$adresy);

Pobieżnie błędy:
- w $wynik masz spację między "/h4" a "<a" - a w wyrażeniu go nie masz. To podstawowy błąd, który bruździ przy regexpach.
- w wyrażeniu regularnym zawartym pomiędzy apostrofami masz na początku "(", a na końcu,przed modyfikatorami, masz ")". A regexp ma być otoczony takimi samymi znakami.
- modyfikator "siU" wyciąłem - mnie się okazał niepotrzebny, na pewno w takim małym tekście "U" jest niepotrzebne, dla jednej linii "s" też jest zbędne. "i" to już wedle upodobań.
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.