Metin görüntü adresler ayıklamak için herhangi preg_match ()?

1 Cevap php

i preg_match() syntax or something similar to extract JPG veya PNG ya da karışık metinden GIF URL'leri ihtiyaç ve ilk bir dizi veya son mağazada koydu url.

belki http ile başlayan ve jpg / png / gif ile biten dizeleri için arar bazı sözdizimi ..

i preg_match() ile yapılabilir inanıyorum

Not: blablablabla"http://www.xxx.com/xxx.jpg"blablablabla: metin bu gibi olabilir

Teşekkür ederim

1 Cevap

Bunların sunucu sahte sonuç takmadan kandırabilir özel günler unutmayınız.

Örneğin:

http://www.myserver.com/virus.exe?fakeParam=.jpg

Veya

http://www.myserver.com/virus.exe#fakeParam=.jpg

Ben hızlı bir şekilde bu davaları önlemek için regex modifiye ettik, ama ben daha fazla olabileceğini eminim (örneğin, dosya yolu% 00 ekleme gibi, kolayca bir regex tarafından çözümlenen olamaz)

$matches = array();
preg_match_all('!http://[^?#]+\.(?:jpe?g|png|gif)!Ui' , $string , $matches);

Eğer sunucuyu biliyorum Yani, güvenlik için, en kısıtlayıcı şekilde regex her zaman kullanmak, örneğin, regex yazmak, ya da yol her zaman harfler, tire, nokta, eğik ve sayıları, kullanım içerecektir biliyorsanız bir ifade gibi:

$matches = array();
preg_match_all('!http://[a-z0-9\-\.\/]+\.(?:jpe?g|png|gif)!Ui' , $string , $matches);

Bu gelecekte herhangi komik bir sürpriz kaçınmalısınız.