Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Parser определенных ссылок ? (https://forum.antichat.xyz/showthread.php?t=127612)

Adio 30.06.2009 11:38

Parser определенных ссылок ?
 
Привет всем вот накопал парсер

<?php

$code = file_get_contents('http://site.com');
preg_match_all('#href=[\'"]([^\'"]+)[\'"]#i', $code, $matches);
echo '<pre>'.print_r($matches[1], true);
?>


Он выдерает ссылки.

Как мне сделать так что бы он выдерал определенные ссылки ? а не все подряд к пример ссылку типа

<a href=example.com>HELLO WORLD</a>


а все остальные ссылки не трогал ? реально ли такое ?

wildshaman 30.06.2009 11:52

Определенные - это какие?

XopoIII 30.06.2009 11:54

ставь условие и проверяй то что тебе нужно

Adio 30.06.2009 12:08

Так я не шарю в этом вообще я на уровне пользователя PHP понимаю..

Определенные это мне нужно пропарисить сайт или документ и вывести все
ссылки

<a href=example.com>HELLO WORLD</a>

А лучше так ( Находим только ссылку Example.com удаляем ее и оставляем только HELLO WORLD..

Можно так ? что бы находило определенную ссылку и выводило только слово HELLO WORLD без ссылки ?

wildshaman 30.06.2009 12:11

PHP код:

<?php
$site
=file_get_contents('http://yandex.ru');
preg_match_all('|<a href="(.*?)">(.*?)</a>|is'$site$out);
print_r($out[2]);
?>

tc

BrainDeaD 30.06.2009 12:14

preg_match_all('#href=example.com>(HELLO WORLD)#', $code, $matches);
echo $matches[1];

!TNK! 30.06.2009 12:18

можно в обычном блокноте сделать замену в исходнике
<a href=example.com> на пусто или чтото другое
после парсинга конешн

BrainDeaD 30.06.2009 12:20

зачем? если так как я написал, он выдирает только текст.

Adio 30.06.2009 12:33

А оно будет выдавать по разному ?? ибо там где HELLO WORLD идет вида

HELLO WORLD1
HELLO WORLD2
WORLD HELLO4

Wildshaman

<?php
$site=file_get_contents('http://yandex.ru');
preg_match_all('|<a href="(.*?)">(.*?)</a>|is', $site, $out);
print_r($out[2]);
?>

Вырезает то что нужно...

Мне нужно вот как отсеить

<a href=example.com>Любой текст</a>

Пропарсить только example.com ссылки и вывести только (Любой текст)

BrainDeaD 30.06.2009 12:40

preg_match_all('#href=example.com>([a-zA-Z0-9_-]*)</a>#', $code, $matches);


Время: 11:59