Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] wyrażenia regularne
Krisu
post
Post #1





Grupa: Zarejestrowani
Postów: 211
Pomógł: 0
Dołączył: 30.03.2006
Skąd: Żary

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


Po prostu, jest to temat, którego nie potrafię zrozumieć.

Jeśli ktoś ma jakieś ciekawe linki gdzie można od podstaw nauczyć się wyrażeń regularnych byłbym wielce wdzięczny.

Przechodząc zaś do problemu, to byłbym wdzięczny, gdyby ktoś pomógł mi przerobić poniższy kod, by odpowiednie zmienne były zczytywane przez funkcję preg_match_all.

Kod
<input type="text" onClick="track('direct');highlight(this)" style="width: 500px" size="70" value="http://img207.imageshack.us/img207/2364/logo.jpg"/>


Szukaną wartością jest link.

Kod
http://img207.imageshack.us/img207/2364/logo.jpg


Dodam, że chodzi mi o to, by z kodu strony wyciągnąć tylko link.
Go to the top of the page
+Quote Post
chemik1982
post
Post #2





Grupa: Zarejestrowani
Postów: 91
Pomógł: 13
Dołączył: 20.03.2007
Skąd: Bydgoszcz

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


Prosze oto link:
wyrazenia regularne


--------------------
fitmate.pl - aplikacje internetowe
Go to the top of the page
+Quote Post
rybik
post
Post #3





Grupa: Zarejestrowani
Postów: 99
Pomógł: 15
Dołączył: 29.07.2006

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


http://www.grabun.com/wyrazenia-regularne/

polecam również program Regexp Coach do testów offline


$pattern='<input(\s+[a-z]+="[a-z0-9/(/);:'\s]+")*\svalue="(http://([a-z0-9/.]+))"\s?/?>';

szukany łańcuch masz w \\2

Ten post edytował rybik 6.08.2008, 00:20:33
Go to the top of the page
+Quote Post
Krisu
post
Post #4





Grupa: Zarejestrowani
Postów: 211
Pomógł: 0
Dołączył: 30.03.2006
Skąd: Żary

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


Niestety, ale ten przykład nie działa, poza tym jest w nim jeden zbędny apostrof.

  1. <?php
  2. $pattern='<input(s+[a-z]+="[a-z0-9/(/);:'s]+")*svalue="(http://([a-z0-9/.]+))"s?/?>';


Z chęcią skorzystam z podanych stron, jednak nadal mam nie rozwiązany problem w tym temacie :]

Dla ułatwienia, mam przykład z którego korzystałem

  1. <?php
  2. preg_match_all("#<input type=\"text\" onclick=\"highlight(this);\" style=\"width: 500px\" size=\"70\" value=\"[img](.*)[/img]\"/>#", $response, $matches);
  3.  
  4. return $matches[1][0];
  5. ?>


Jednak imageshack zmienił kod źródłowy html i aktualny kod różni się nieznacznie od poprzedniego.

Czy na podobnej zasadzie mogę wyciągnąć z tego kodu:

Kod
<input type="text" onClick="track('direct');highlight(this)" style="width: 500px" size="70" value="http://img207.imageshack.us/img207/2364/logo.jpg"/>


ten adres docelowy?

Kod
http://img207.imageshack.us/img207/2364/logo.jpg


Łącznie z http:// itd...
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 - 07:43