Я пытаюсь использовать preg_replace, чтобы получить некоторые данные из удаленной страницы, но у меня немного вопроса, когда дело доходит до сортировки шаблона.preg_replace ад
function getData($Url){
$str = file_get_contents($Url);
if(strlen($str)>0){
preg_match("/\<span class=\"SectionHeader\"\>title\</span>/<br/>/\<div class=\"header2\"\>(.*)\</div\></span\>/",$str,$title);
return $title[1];
}
}
Вот HTML как прежде, чем я закончил тем, что бросил миллион слэш на него (похоже, что я забыл часть или два):
<span class="cell CellFullWidth"><span class="SectionHeader">mytitle</span><br/><div class="Center">Event Name</div></span>
Где Имя события является данные, которые я хочу для возврата в мою функцию.
Большое спасибо, ребята, это боль в заднице.
Я бы не касался этого десятифутовым столбом. Должен быть более эффективный способ получить название, чем сканирование всей страницы для соответствия. Вы знаете, что preg_match вернет массив, если он содержит более одного соответствия для этих критериев, правильно? – animuson
Я хотел бы использовать HTML-парсер, такие как http://simplehtmldom.sourceforge.net/ – marvin
Как так много раз, прежде чем на SO, я бы рекомендовал не использовать регулярные выражения для разбора HTML, так как они не подходят для этого. Вместо этого используйте парсер HTML. –