Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Preg_match wyodrebnianie textu z pola img src
neo1986kk
post
Post #1





Grupa: Zarejestrowani
Postów: 561
Pomógł: 3
Dołączył: 2.02.2009

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


Witam,

mam takie wyrażenie regularne

  1. #<\s*img [^\>]*src\s*=\s*(["\'])(.*(jpg).*)\1#im


i taki problem, że wybiera mi ono zdjęcia z src ale jeśli img ma atrybuty np alt="cos" to wybiera mi razem z tym altem, a chcę uzyskać tylko to co jest w src, czy jest taka możliwość, żeby przerobić to moje wyrażenie, aby wybierało mi to na czym mi zależy?

Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 13)
croc
post
Post #2





Grupa: Zarejestrowani
Postów: 706
Pomógł: 108
Dołączył: 12.03.2010

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


A co powiesz na takie?
Kod
#<\s*img\s+[^>]*src\s*=\s*["']?([^"'>]+\.jpg)#i

Zakładam, że szukasz src kończącym się na .jpg.
Go to the top of the page
+Quote Post
neo1986kk
post
Post #3





Grupa: Zarejestrowani
Postów: 561
Pomógł: 3
Dołączył: 2.02.2009

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


no ale teraz znajduje gify też, a chcę tylko jpg
Go to the top of the page
+Quote Post
croc
post
Post #4





Grupa: Zarejestrowani
Postów: 706
Pomógł: 108
Dołączył: 12.03.2010

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


Cytat(neo1986kk @ 4.11.2011, 22:15:07 ) *
no ale teraz znajduje gify też

Jesteś pewien?
Go to the top of the page
+Quote Post
neo1986kk
post
Post #5





Grupa: Zarejestrowani
Postów: 561
Pomógł: 3
Dołączył: 2.02.2009

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


no jestem, a co gorsza nie znajduje jpg

tylko ze ja musialem to troche przerobic i u mnie wyglada tak

  1. $image_regex = '#<\s*img\s+[^>]*src\s*=\s*["\']?([^"\'>]+\.jpg)#i';



Ten post edytował neo1986kk 4.11.2011, 22:23:57
Go to the top of the page
+Quote Post
croc
post
Post #6





Grupa: Zarejestrowani
Postów: 706
Pomógł: 108
Dołączył: 12.03.2010

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


To coś nie tak, bo ja też sprawdziłem (na kodzie wp.pl) i działa.
Go to the top of the page
+Quote Post
neo1986kk
post
Post #7





Grupa: Zarejestrowani
Postów: 561
Pomógł: 3
Dołączył: 2.02.2009

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


JSON Z wp.pl


"1":"http:\/\/www.wp.pl\/i\/ivar\/layout\/200812\/bxserw2zam2.gif","2":"http:\/\/www.wp.pl\/i\/ivar\/P\/201110\/1319617722.gif","3":"http:\/\/www.wp.pl\/i\/ivar\/P\/201104\/275946.gif","4":"http:\/\/www.wp.pl\/i\/ivar\/T\/201110\/1319545152.gif","5":"http:\/\/www.wp.pl\/i\/ivar\/T\/201110\/1318321159.gif","6":"http:\/\/www.wp.pl\/i\/ivar\/layout\/200812\/dc.gif","7":"http:\/\/www.wp.pl\/i\/ivar\/T\/201106\/293779.gif","8":"http:\/\/www.wp.pl\/i\/ivar\/layout\/200812\/lgns.gif","9":"http:\/\/www.wp.pl\/i\/ivar\/layout\/200812\/lgpkt.gif","10":"http:\/\/www.wp.pl\/i\/ivar\/layout\/200812\/lgns.gif","11":"http:\/\/www.wp.pl\/i\/ivar\/layout\/200812\/ladowanie.gif","12":"http:\/\/www.wp.pl\/i\/ivar\/layout\/200812\/ladowanie.gif","13":"http:\/\/www.wp.pl\/i\/ivar\/layout\/200812\/ladowanie.gif","14":"http:\/\/www.wp.pl\/i\/ivar\/layout\/200812\/ladowanie.gif","15":"http:\/\/www.wp.pl\/i\/ivar\/layout\/200812\/ladowanie.gif","16":"http:\/\/www.wp.pl\/i\/ivar\/layout\/200812\/ladowanie.gif","17":"http:\/\/www.wp.pl\/i\/ivar\/layout\/200812\/ladowanie.gif","18":"http:\/\/www.wp.pl\/i\/ivar\/layout\/200812\/ladowanie.gif","19":"http:\/\/www.wp.pl\/i\/ivar\/layout\/200812\/ladowanie.gif","20":"http:\/\/www.wp.pl\/i\/ivar\/layout\/200812\/wptv_logo.gif","21":"http:\/\/www.wp.pl\/i\/ivar\/T\/201110\/1319198479.gif

ok dziala, zapomnialem w 3 regu zmienić sorry za zamieszanie
Go to the top of the page
+Quote Post
croc
post
Post #8





Grupa: Zarejestrowani
Postów: 706
Pomógł: 108
Dołączył: 12.03.2010

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


  1. preg_match_all('#<\s*img\s+[^>]*src\s*=\s*["\']?([^"\'>]+\.jpg)#i', file_get_contents('http://wp.pl/'), $matches);
  2. print_r($matches);

Efekt:
Kod
Array
(
    [0] => Array
        (
            [0] => <img src="i/ivar/T/200903/8853.jpg
            [1] => <img src="i/ivar/O/200905/38904.jpg
            [2] => <img src="i/ivar/O/200905/38962.jpg
            [3] => <img src="i/ivar/W/201110/1319536913.jpg
            [4] => <img src="i/ivar/T/201109/340092.jpg
            [5] => <img id="gloI1" src="i/ivar/F/201111/1320417490.jpg
            [6] => <img id="gloI2" src="i/ivar/F/201111/1320408108.jpg
            [7] => <img id="gloI3" src="i/ivar/F/201111/1320332706.jpg
            [8] => <img id="gloI4" src="i/ivar/G/201111/1320333510.jpg
            [9] => <img id="gloI5" src="i/ivar/F/201111/1320314966.jpg
            [10] => <img src="i/ivar/F/201111/1320405463.jpg
            [11] => <img src="i/ivar/P/201111/1320402594.jpg
            [12] => <img src="i/ivar/M/201111/1320331503.jpg
            [13] => <img src="i/ivar/M/201110/1318489924.jpg
            [14] => <img src="i/ivar/M/201106/290926.jpg
            [15] => <img src="i/ivar/T/201111/1320325037.jpg
            [16] => <img src="i/ivar/S/201111/1320401046.jpg
            [17] => <img src="i/ivar/S/201102/242653.jpg
            [18] => <img src="i/ivar/K/201110/1319625226.jpg
            [19] => <img src="i/ivar/F/201111/1320423058.jpg
            [20] => <img src="i/ivar/F/201110/1318841996.jpg
            [21] => <img src="i/ivar/F/201111/1320331208.jpg
            [22] => <img src="i/ivar/F/201110/1318417735.jpg
            [23] => <img src="i/ivar/C/201110/1319792652.jpg
            [24] => <img src="i/ivar/F/201111/1320441839.jpg
            [25] => <img src="i/ivar/M/201007/163920.jpg
            [26] => <img src="i/ivar/F/201111/1320323011.jpg
            [27] => <img src="i/ivar/T/201110/1319020007.jpg
            [28] => <img src="i/ivar/T/201110/1319548442.jpg
            [29] => <img src="i/ivar/A/201105/283774.jpg
            [30] => <img src="i/ivar/A/201105/283768.jpg
            [31] => <img src="i/ivar/A/201105/285905.jpg
            [32] => <img src="i/ivar/T/201111/1320327142.jpg
            [33] => <img src="i/ivar/A/201108/334449.jpg
            [34] => <img src="i/ivar/A/201109/339906.jpg
            [35] => <img src="i/ivar/A/201109/341234.jpg
            [36] => <img src="i/ivar/A/201108/334642.jpg
        )

    [1] => Array
        (
            [0] => i/ivar/T/200903/8853.jpg
            [1] => i/ivar/O/200905/38904.jpg
            [2] => i/ivar/O/200905/38962.jpg
            [3] => i/ivar/W/201110/1319536913.jpg
            [4] => i/ivar/T/201109/340092.jpg
            [5] => i/ivar/F/201111/1320417490.jpg
            [6] => i/ivar/F/201111/1320408108.jpg
            [7] => i/ivar/F/201111/1320332706.jpg
            [8] => i/ivar/G/201111/1320333510.jpg
            [9] => i/ivar/F/201111/1320314966.jpg
            [10] => i/ivar/F/201111/1320405463.jpg
            [11] => i/ivar/P/201111/1320402594.jpg
            [12] => i/ivar/M/201111/1320331503.jpg
            [13] => i/ivar/M/201110/1318489924.jpg
            [14] => i/ivar/M/201106/290926.jpg
            [15] => i/ivar/T/201111/1320325037.jpg
            [16] => i/ivar/S/201111/1320401046.jpg
            [17] => i/ivar/S/201102/242653.jpg
            [18] => i/ivar/K/201110/1319625226.jpg
            [19] => i/ivar/F/201111/1320423058.jpg
            [20] => i/ivar/F/201110/1318841996.jpg
            [21] => i/ivar/F/201111/1320331208.jpg
            [22] => i/ivar/F/201110/1318417735.jpg
            [23] => i/ivar/C/201110/1319792652.jpg
            [24] => i/ivar/F/201111/1320441839.jpg
            [25] => i/ivar/M/201007/163920.jpg
            [26] => i/ivar/F/201111/1320323011.jpg
            [27] => i/ivar/T/201110/1319020007.jpg
            [28] => i/ivar/T/201110/1319548442.jpg
            [29] => i/ivar/A/201105/283774.jpg
            [30] => i/ivar/A/201105/283768.jpg
            [31] => i/ivar/A/201105/285905.jpg
            [32] => i/ivar/T/201111/1320327142.jpg
            [33] => i/ivar/A/201108/334449.jpg
            [34] => i/ivar/A/201109/339906.jpg
            [35] => i/ivar/A/201109/341234.jpg
            [36] => i/ivar/A/201108/334642.jpg
        )

)
Go to the top of the page
+Quote Post
neo1986kk
post
Post #9





Grupa: Zarejestrowani
Postów: 561
Pomógł: 3
Dołączył: 2.02.2009

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


Edit: a spróbuj tym kodem ściągnąć obrazek stąd http://www.wiocha.pl/40143,A_pozniej_chwali_sie_kolegom
Go to the top of the page
+Quote Post
croc
post
Post #10





Grupa: Zarejestrowani
Postów: 706
Pomógł: 108
Dołączył: 12.03.2010

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


No też działa...
Go to the top of the page
+Quote Post
neo1986kk
post
Post #11





Grupa: Zarejestrowani
Postów: 561
Pomógł: 3
Dołączył: 2.02.2009

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


a u mnie się pokazują ikony przerwanych kartek w array
  1. preg_match_all('#<\s*img\s+[^>]*src\s*=\s*["\']?([^"\'>]+\.jpg)#i', file_get_contents('http://www.wiocha.pl/40143,A_pozniej_chwali_sie_kolegom'), $matches);
  2. print_r($matches);
Go to the top of the page
+Quote Post
croc
post
Post #12





Grupa: Zarejestrowani
Postów: 706
Pomógł: 108
Dołączył: 12.03.2010

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


I prawidłowo. Pokazują się, bo preg_match_all zwraca w pierwszej kolejności pełne dopasowanie wzorców. A mój wzorzec nie domyka całego znacznika, bo po co ma to robić. Nie interesuje nas to co jest po src.
Go to the top of the page
+Quote Post
neo1986kk
post
Post #13





Grupa: Zarejestrowani
Postów: 561
Pomógł: 3
Dołączył: 2.02.2009

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


juz wiem dlaczego, bo jak zmieniłem na print(mathes[1]) to pokazalo linki

masz absolutną rację

Ten post edytował neo1986kk 4.11.2011, 22:54:23
Go to the top of the page
+Quote Post
wNogachSpisz
post
Post #14





Grupa: Zarejestrowani
Postów: 1 233
Pomógł: 87
Dołączył: 6.03.2009

Ostrzeżenie: (40%)
XX---


Do takich rzeczy jest PHP:DOM:DomDocument
Nie żadne preg_match()
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 19.09.2025 - 21:38