Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][Wyrażenia regularne] Linki do facebooka
arturpiotrowski
post
Post #1





Grupa: Zarejestrowani
Postów: 71
Pomógł: 1
Dołączył: 6.12.2016

Ostrzeżenie: (0%)
-----


za pomocą file_get_contents pobieram sobie zawartość strony, proszę o pomoc w napisaniu wyrażenia regularnego do wyciągnięcia do tablicy wszystkich linków do facebooka, żebym mógł go użyć z funkcją preg_match_all
chodzi mi o linki do profili i stron

Ten post edytował arturpiotrowski 15.07.2017, 07:52:15
Go to the top of the page
+Quote Post
Szado
post
Post #2





Grupa: Zarejestrowani
Postów: 22
Pomógł: 4
Dołączył: 30.05.2017

Ostrzeżenie: (0%)
-----


Nie znam formatów linków o które Ci chodzi, ale pomocna może się dla Ciebie okazać strona https://regex101.com smile.gif
Go to the top of the page
+Quote Post
Evinek
post
Post #3





Grupa: Zarejestrowani
Postów: 280
Pomógł: 46
Dołączył: 23.03.2010

Ostrzeżenie: (0%)
-----


https://pl.wikibooks.org/wiki/PHP/Podstawy_...%84_regularnych

Czytasz, coś próbujesz. Jak nie wyjdzie to wtedy poproś o pomoc podając to co już zrobiłeś.

Tutaj możesz testować dynamicznie:
https://regex101.com/
Przydaje się do nauki.
Go to the top of the page
+Quote Post
tenloginjestzaje...
post
Post #4





Grupa: Zarejestrowani
Postów: 358
Pomógł: 1
Dołączył: 20.07.2014

Ostrzeżenie: (0%)
-----


  1. $content = 'tekst z linkami';
  2. $preg_replace = array('@(https?://([-\w\.]+[-\w])+(:\d+)?(/([\w/_\.#-]*(\?\S+)?[^\.\s])?)?)@');
  3. $search_replace = array('<a href="$1">$1</a>');
  4. $showcontent = preg_replace($preg_replace, $search_replace, $content);
  5. echo $showcontent;


Wyciąganie linków z tekstu ( trzeba znaleźć tylko cechę wspólna dla linków z fb ).


--------------------
Nigdy nie zapominam kliknąć "pomógł". Zastosowanie na stronie [prosze nie spamuj]
Go to the top of the page
+Quote Post
arturpiotrowski
post
Post #5





Grupa: Zarejestrowani
Postów: 71
Pomógł: 1
Dołączył: 6.12.2016

Ostrzeżenie: (0%)
-----


Prawie się udało
  1. $url ='kodhtml.txt';
  2. $content = file_get_contents($url);
  3. $pattern = '/<a\s[^>]*href=(\"questionmark.gif)(https?:\/\/(?:www)\.facebook\.com\/[^\" >]*?)\\1[^>]*>.*?<\/a>/i';
  4. preg_match_all($pattern, $content, $matches);
  5. var_dump($matches);

Pytanie tylko czemu nie widzi facebookowych linków bez www, i jak wykluczyć z tego linki fb z konkretnymi słowami np "dupa","polityka" w adresie?
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 13:45