![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 62 Pomógł: 0 Dołączył: 14.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Proste wyrażenie regularne:
Wyciąga z <embed src="http://link.pl/a.swf" /> zawartość src="", czyli http://link.pl/a.swf. Próbowałem przekształcić wyrażenie tak, aby wyciągało też zawartość data="" - jeżeli jest. próbowałem:
Tylko, że takie wyrażenie nie działa jak należy. Jak więc je przerobić, aby wyciągało zarówno src="" i data="" ? |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Umieść src i data w grupie.
Ten post edytował !*! 23.11.2012, 18:11:04 -------------------- Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta). |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 62 Pomógł: 0 Dołączył: 14.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Wszystko byłoby dobrze, tylko, że chodzi o to aby wyrażenie zwróciło /(src|data)="([a-z0-9\/\.\:]+)"/ , a nie /(src|data)="([a-z0-9\/\.\:]+)"/
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
I zwraca, użyj preg_match_all
-------------------- Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta). |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 62 Pomógł: 0 Dołączył: 14.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Mój skrypt wygląda tak:
I $out[0][1] zwraca "src" zamiast zawartość samego src="" |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
A mój tak i jest ok:
Cytat Array ( [0] => Array ( [0] => src="http://link.pl/a.swf" [1] => data="asdasd" ) [1] => Array ( [0] => src [1] => data ) [2] => Array ( [0] => http://link.pl/a.swf [1] => asdasd ) ) Z debuguj to sobie na tej samej zasadzie i odwołaj się odpowiednio do tablicy. -------------------- Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta). |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 62 Pomógł: 0 Dołączył: 14.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Tylko, że nie chodzi o to, że w jednym embed / object / iframe są dwie wartości. Co w przypadku, gdy $text =
Kod <object data="http://bi.gazeta.pl/ogl/adv/upload_cms/a/1/18/05faf508ab.swf" /> ? (w pierwszym poście źle się wyraziłem..) Ten post edytował czernin 23.11.2012, 18:37:45 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
To dopisz sobie znak którego brakuje w wyrażeniu, czyli _
-------------------- Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta). |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 62 Pomógł: 0 Dołączył: 14.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
W którym miejscu dokładnie dodać ten znak?
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Wszystko byłoby dobrze, tylko, że chodzi o to aby wyrażenie zwróciło /(src|data)="([a-z0-9\/\.\:]+)"/ , a nie /(src|data)="([a-z0-9\/\.\:]+)"/ W którym miejscu dokładnie dodać ten znak? Z tego z którego chcesz wyciągnąć dane. Ten post edytował !*! 23.11.2012, 18:49:02 -------------------- Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta). |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 05:01 |