phpuser
پنج شنبه 17 فروردین 1391, 22:41 عصر
سلام
من یه صفحه html دارم که حدود 300 تا لینک و 100 تا عکس توش هست و دارم محتویات این صفحه رو با curl میخونم استاد گفته باید تمام لینک هایی که در href شون عبارت مثلا example.com هست رو با ریگولار اکسپرژن در بیارم همچنین عکس هایی که در src شون عبارت مثلا text هست رو در بیارم.
من تونستم با این مد به جواب نزدیک بشم :
$regex = '|<a.*?href="(.*?)"|';
preg_match_all($regex, $result, $parts);
$links = array_unique($parts[1]);
$regex = '|<img.*?src="(.*?)"|';
preg_match_all($regex, $result, $pics);
$images = array_unique($pics[1]);
اما همون طور که میبینید این کد تمام href ها و تمام src ها رو در میاره.
لطفا بگید چه تغییری باید توش بدم؟
من یه صفحه html دارم که حدود 300 تا لینک و 100 تا عکس توش هست و دارم محتویات این صفحه رو با curl میخونم استاد گفته باید تمام لینک هایی که در href شون عبارت مثلا example.com هست رو با ریگولار اکسپرژن در بیارم همچنین عکس هایی که در src شون عبارت مثلا text هست رو در بیارم.
من تونستم با این مد به جواب نزدیک بشم :
$regex = '|<a.*?href="(.*?)"|';
preg_match_all($regex, $result, $parts);
$links = array_unique($parts[1]);
$regex = '|<img.*?src="(.*?)"|';
preg_match_all($regex, $result, $pics);
$images = array_unique($pics[1]);
اما همون طور که میبینید این کد تمام href ها و تمام src ها رو در میاره.
لطفا بگید چه تغییری باید توش بدم؟